HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VEX_GeoCommand.h File Reference
#include "VEX_API.h"
#include "VEX_Types.h"
#include <UT/UT_Array.h>
#include <UT/UT_SharedString.h>
#include <UT/UT_StringHolder.h>
#include <UT/UT_StringSet.h>
#include <UT/UT_Vector3.h>
#include <UT/UT_VectorTypes.h>
#include <UT/UT_IntArray.h>
#include <UT/UT_PageArray.h>
#include <hboost/variant.hpp>
+ Include dependency graph for VEX_GeoCommand.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  VEX_GeoCommand
 
class  VEX_GeoCommandPrimAdd< PREC >
 
class  VEX_GeoCommandPointAdd< PREC >
 
class  VEX_GeoCommandVertexAdd< PREC >
 
class  VEX_GeoCommandObjectRemove< PREC >
 
class  VEX_DataCommandAttribEdit< PREC, OBJ_ID, SEC_ID, T >
 
class  VEX_GeoCommandVertexRewire< PREC >
 
class  VEX_GeoCommandAgentChannelEdit< PREC >
 
class  VEX_GeoCommandAgentXformEdit< PREC >
 
class  VEX_GeoCommandAgentClipEdit< PREC >
 
class  VEX_GeoCommandAgentAddClip< PREC >
 
class  VEX_AttribEdit< PREC, OBJ_ID, SEC_ID >
 
class  VEX_AttribEdit< PREC, OBJ_ID, SEC_ID >::DefaultValue
 
class  VEX_GeoCommandEdgeGroupEdit< PREC >
 
class  VEX_GeoEdgeGroupEdit< PREC >
 
class  VEX_GeoCommandQueue< PREC >
 
struct  VEX_GeoCommandQueue< PREC >::VariableEntry
 

Namespaces

 VEX_Geo
 
 VEX_DataObjID
 

Macros

#define VEX_GEOATTRIBEDIT_CASE(vtype, type, name, isarray)
 
#define VEX_GEOATTRIBEDIT_CASE_DIRECT(ty, name)   VEX_GEOATTRIBEDIT_CASE(VEX_VexTypeResolver<VEX##ty<PREC>>::type,VEX##ty<PREC>,name,false)
 
#define VEX_GEOATTRIBEDIT_CASE_ARRAY(ty, name)   VEX_GEOATTRIBEDIT_CASE(VEX_VexTypeResolver<VEX##ty<PREC>>::type,const UT_Array<VEX##ty<PREC>>*,name,true)
 

Typedefs

template<VEX_Precision PREC, typename T >
using VEX_GeoCommandAttribEdit = VEX_DataCommandAttribEdit< PREC, VEXint< PREC >, VEXint< PREC >, T >
 
template<VEX_Precision PREC, typename T >
using VEX_UsdCommandAttribEdit = VEX_DataCommandAttribEdit< PREC, UT_StringHolder, VEXint< PREC >, T >
 
template<VEX_Precision PREC>
using VEX_GeoAttribEdit = VEX_AttribEdit< PREC, VEXint< PREC >, VEXint< PREC >>
 
template<VEX_Precision PREC>
using VEX_UsdAttribEdit = VEX_AttribEdit< PREC, UT_StringHolder, VEXint< PREC >>
 

Enumerations

enum  VEX_GeoMode {
  VEX_GeoMode::SET, VEX_GeoMode::ADD, VEX_GeoMode::MAX, VEX_GeoMode::MIN,
  VEX_GeoMode::MULTIPLY, VEX_GeoMode::TOGGLE, VEX_GeoMode::APPEND, VEX_GeoMode::INVALID
}
 
enum  VEX_GeoPrimType {
  VEX_GeoPrimType::POLY_OPEN, VEX_GeoPrimType::POLY_CLOSED, VEX_GeoPrimType::TET, VEX_GeoPrimType::SPHERE,
  VEX_GeoPrimType::CIRCLE, VEX_GeoPrimType::TUBE, VEX_GeoPrimType::METABALL, VEX_GeoPrimType::METASQUAD,
  VEX_GeoPrimType::PACKEDALEMBIC, VEX_GeoPrimType::PACKEDDISK, VEX_GeoPrimType::INVALID
}
 
enum  VEX_GeoDictType {
  VEX_GeoDictType::DETAIL, VEX_GeoDictType::DETAILINTRINSIC, VEX_GeoDictType::PRIM, VEX_GeoDictType::PRIMINTRINSIC,
  VEX_GeoDictType::PRIMGROUP, VEX_GeoDictType::POINT, VEX_GeoDictType::POINTGROUP, VEX_GeoDictType::VERTEX,
  VEX_GeoDictType::VERTEXGROUP, VEX_GeoDictType::INVALID
}
 
enum  VEX_GeoTypeInfo {
  VEX_GeoTypeInfo::NOCHANGE = -1, VEX_GeoTypeInfo::NONE = 0, VEX_GeoTypeInfo::POINT, VEX_GeoTypeInfo::HPOINT,
  VEX_GeoTypeInfo::VECTOR, VEX_GeoTypeInfo::NORMAL, VEX_GeoTypeInfo::COLOR, VEX_GeoTypeInfo::TRANSFORM,
  VEX_GeoTypeInfo::QUATERNION, VEX_GeoTypeInfo::INDEXPAIR, VEX_GeoTypeInfo::NONARITHMETIC_INTEGER, VEX_GeoTypeInfo::ARITHMETIC_INTEGER,
  VEX_GeoTypeInfo::TEXTURE_COORD
}
 

Functions

VEX_API VEX_GeoMode VEX_Geo::modeFromString (const char *)
 
VEX_API VEX_GeoPrimType VEX_Geo::typeFromString (const char *)
 
VEX_API VEX_GeoDictType VEX_Geo::dictFromString (const char *)
 
VEX_API VEX_GeoTypeInfo VEX_Geo::typeinfoFromString (const char *)
 
 VEX_EXTERN_TEMPLATE (VEX_AttribEdit< VEX_32, VEXint< VEX_32 >, VEXint< VEX_32 >>)
 
 VEX_EXTERN_TEMPLATE (VEX_AttribEdit< VEX_32, UT_StringHolder, VEXint< VEX_32 >>)
 
 VEX_EXTERN_TEMPLATE (VEX_GeoEdgeGroupEdit< VEX_32 >)
 
 VEX_EXTERN_TEMPLATE (VEX_GeoCommandQueue< VEX_32 >)
 
 VEX_EXTERN_TEMPLATE (VEX_AttribEdit< VEX_64, VEXint< VEX_64 >, VEXint< VEX_64 >>)
 
 VEX_EXTERN_TEMPLATE (VEX_AttribEdit< VEX_64, UT_StringHolder, VEXint< VEX_64 >>)
 
 VEX_EXTERN_TEMPLATE (VEX_GeoEdgeGroupEdit< VEX_64 >)
 
 VEX_EXTERN_TEMPLATE (VEX_GeoCommandQueue< VEX_64 >)
 

Macro Definition Documentation

#define VEX_GEOATTRIBEDIT_CASE (   vtype,
  type,
  name,
  isarray 
)
Value:
name##Cmd() \
{\
if (myType == vtype && myIsArray == isarray)\
return nullptr;\
}
GLuint const GLchar * name
Definition: glew.h:1814
if(rank==1) return rank

Definition at line 584 of file VEX_GeoCommand.h.

#define VEX_GEOATTRIBEDIT_CASE_ARRAY (   ty,
  name 
)    VEX_GEOATTRIBEDIT_CASE(VEX_VexTypeResolver<VEX##ty<PREC>>::type,const UT_Array<VEX##ty<PREC>>*,name,true)

Definition at line 594 of file VEX_GeoCommand.h.

#define VEX_GEOATTRIBEDIT_CASE_DIRECT (   ty,
  name 
)    VEX_GEOATTRIBEDIT_CASE(VEX_VexTypeResolver<VEX##ty<PREC>>::type,VEX##ty<PREC>,name,false)

Definition at line 592 of file VEX_GeoCommand.h.

Typedef Documentation

template<VEX_Precision PREC>
using VEX_GeoAttribEdit = VEX_AttribEdit<PREC, VEXint<PREC>, VEXint<PREC>>

Definition at line 652 of file VEX_GeoCommand.h.

template<VEX_Precision PREC, typename T >
using VEX_GeoCommandAttribEdit = VEX_DataCommandAttribEdit<PREC, VEXint<PREC>, VEXint<PREC>, T>

Definition at line 243 of file VEX_GeoCommand.h.

template<VEX_Precision PREC>
using VEX_UsdAttribEdit = VEX_AttribEdit<PREC, UT_StringHolder, VEXint<PREC>>

Definition at line 654 of file VEX_GeoCommand.h.

template<VEX_Precision PREC, typename T >
using VEX_UsdCommandAttribEdit = VEX_DataCommandAttribEdit<PREC, UT_StringHolder, VEXint<PREC>, T>

Definition at line 246 of file VEX_GeoCommand.h.

Enumeration Type Documentation

enum VEX_GeoDictType
strong
Enumerator
DETAIL 
DETAILINTRINSIC 
PRIM 
PRIMINTRINSIC 
PRIMGROUP 
POINT 
POINTGROUP 
VERTEX 
VERTEXGROUP 
INVALID 

Definition at line 59 of file VEX_GeoCommand.h.

enum VEX_GeoMode
strong
Enumerator
SET 
ADD 
MAX 
MIN 
MULTIPLY 
TOGGLE 
APPEND 
INVALID 

Definition at line 32 of file VEX_GeoCommand.h.

enum VEX_GeoPrimType
strong
Enumerator
POLY_OPEN 
POLY_CLOSED 
TET 
SPHERE 
CIRCLE 
TUBE 
METABALL 
METASQUAD 
PACKEDALEMBIC 
PACKEDDISK 
INVALID 

Definition at line 44 of file VEX_GeoCommand.h.

enum VEX_GeoTypeInfo
strong
Enumerator
NOCHANGE 
NONE 
POINT 
HPOINT 
VECTOR 
NORMAL 
COLOR 
TRANSFORM 
QUATERNION 
INDEXPAIR 
NONARITHMETIC_INTEGER 
ARITHMETIC_INTEGER 
TEXTURE_COORD 

Definition at line 73 of file VEX_GeoCommand.h.

Function Documentation

VEX_EXTERN_TEMPLATE ( VEX_AttribEdit< VEX_32, VEXint< VEX_32 >, VEXint< VEX_32 >>  )
VEX_EXTERN_TEMPLATE ( VEX_AttribEdit< VEX_32, UT_StringHolder, VEXint< VEX_32 >>  )
VEX_EXTERN_TEMPLATE ( VEX_GeoEdgeGroupEdit< VEX_32 >  )
VEX_EXTERN_TEMPLATE ( VEX_GeoCommandQueue< VEX_32 >  )
VEX_EXTERN_TEMPLATE ( VEX_AttribEdit< VEX_64, VEXint< VEX_64 >, VEXint< VEX_64 >>  )
VEX_EXTERN_TEMPLATE ( VEX_AttribEdit< VEX_64, UT_StringHolder, VEXint< VEX_64 >>  )
VEX_EXTERN_TEMPLATE ( VEX_GeoEdgeGroupEdit< VEX_64 >  )
VEX_EXTERN_TEMPLATE ( VEX_GeoCommandQueue< VEX_64 >  )