HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
VOP_Node.h File Reference
#include <set>
#include <map>
#include <iosfwd>
#include "VOP_API.h"
#include "VOP_DataMicroNode.h"
#include "VOP_Error.h"
#include "VOP_Language.h"
#include "VOP_TypeInfo.h"
#include "VOP_OperatorInfo.h"
#include "VOP_OutputInfoManager.h"
#include <OP/OP_Director.h>
#include <OP/OP_Network.h>
#include <UT/UT_UniquePtr.h>
#include <UT/UT_BitArray.h>
#include <UT/UT_ValArray.h>
#include <UT/UT_SymbolTable.h>
#include <UT/UT_Array.h>
#include <UT/UT_Map.h>
#include <SYS/SYS_Types.h>
#include <vector>
+ Include dependency graph for VOP_Node.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  VOP_AutoConvertInfo
 
struct  VOP_MergeNodeInfo
 
class  VOP_VarInfo
 
class  VOP_GlobalVarData
 
class  VOP_OutputNameEditorSource
 
class  VOP_FunctionArgInfo
 
class  vop_Connector
 
class  VOP_Node
 

Macros

#define VOP_OPT_LOW_FLAG   'L'
 
#define VOP_OPT_MEDIUM_FLAG   'M'
 
#define VOP_OPT_HIGH_FLAG   'H'
 
#define VOP_DEBUG_FLAG   'D'
 
#define VOP_MATERIAL_FLAG   'E'
 
#define VOP_PARMORDER_NAME   "parmorder"
 
#define VOP_BIND_NAME   "bind"
 
#define VOP_GLOBAL_NODE_NAME   "global"
 
#define VOP_ILLUM_NODE_NAME   "illuminance"
 
#define VOP_PARM_NODE_NAME   "parameter"
 
#define VOP_CONST_NODE_NAME   "constant"
 
#define VOP_PARMRAMP_NODE_NAME   "rampparm"
 
#define VOP_INLINE_CODE_NODE_NAME   "inline"
 
#define VOP_SNIPPET_NODE_NAME   "snippet"
 
#define VOP_COLLECT_NODE_NAME   "collect"
 
#define VOP_MATERIAL_BUILDER_NODE_NAME   "materialbuilder"
 
#define VOP_RSL_PREFIX   "rsl_"
 
#define VOP_VARIABLE_INOUT_MAX   2048
 
#define VOP_SUBNET_VARIABLE_PREFIX   "_"
 Prefix given to the subnet input variables. More...
 
#define VOP_IMPLEMENT_CASTS(NAME)
 

Typedefs

using VOP_VariableTagsHandle = UT_SharedPtr< const VOP_VariableTags >
 
typedef UT_ValArray< VOP_Node * > VOP_NodeList
 
typedef UT_ValArray
< VOP_GlobalVarData * > 
VOP_GlobalVarList
 
typedef UT_ValArray
< VOP_ParmGenerator * > 
VOP_ParmGeneratorList
 
typedef UT_SymbolMap
< VOP_GlobalVarData * > 
VOP_GlobalVarMap
 
typedef UT_SymbolMap
< VOP_ParmGenerator * > 
VOP_ParmGeneratorMap
 
typedef UT_SymbolMap
< VOP_ParmGeneratorList * > 
VOP_LocalChannelMap
 
typedef std::vector
< VOP_AutoConvertInfo
TAutoConvertInfos
 
typedef std::set< intTIntSet
 
typedef std::map< VOP_Node
*, VOP_MergeNodeInfo
TMergeNodeInfos
 
typedef UT_Array< vop_Connectorvop_ConnectorArray
 

Enumerations

enum  VOP_UIChangeType { VOP_UICHANGE_DEFINER = OP_UICHANGE_OPTYPE_VOP }
 

Functions

SYS_VISIBILITY_EXPORT void newVopOperator (OP_OperatorTable *table)
 

Macro Definition Documentation

#define VOP_BIND_NAME   "bind"

Definition at line 46 of file VOP_Node.h.

#define VOP_COLLECT_NODE_NAME   "collect"

Definition at line 54 of file VOP_Node.h.

#define VOP_CONST_NODE_NAME   "constant"

Definition at line 50 of file VOP_Node.h.

#define VOP_DEBUG_FLAG   'D'

Definition at line 40 of file VOP_Node.h.

#define VOP_GLOBAL_NODE_NAME   "global"

Definition at line 47 of file VOP_Node.h.

#define VOP_ILLUM_NODE_NAME   "illuminance"

Definition at line 48 of file VOP_Node.h.

#define VOP_IMPLEMENT_CASTS (   NAME)
Value:
static const VOP_##NAME *castTo##NAME(const OP_Node *node) { \
const VOP_Node *vop = CAST_VOPNODE(node); \
return vop ? vop->castTo##NAME() : nullptr; } \
static VOP_##NAME *castTo##NAME(OP_Node *node) { \
VOP_Node *vop = CAST_VOPNODE(node); \
return vop ? vop->castTo##NAME() : nullptr; } \
virtual const VOP_##NAME *castTo##NAME() const { return nullptr; } \
virtual VOP_##NAME *castTo##NAME() { return nullptr; }
#define const
Definition: zconf.h:214

Virtual methods to avoid dynamic_casts

Definition at line 356 of file VOP_Node.h.

#define VOP_INLINE_CODE_NODE_NAME   "inline"

Definition at line 52 of file VOP_Node.h.

#define VOP_MATERIAL_BUILDER_NODE_NAME   "materialbuilder"

Definition at line 55 of file VOP_Node.h.

#define VOP_MATERIAL_FLAG   'E'

Definition at line 41 of file VOP_Node.h.

#define VOP_OPT_HIGH_FLAG   'H'

Definition at line 39 of file VOP_Node.h.

#define VOP_OPT_LOW_FLAG   'L'

Definition at line 37 of file VOP_Node.h.

#define VOP_OPT_MEDIUM_FLAG   'M'

Definition at line 38 of file VOP_Node.h.

#define VOP_PARM_NODE_NAME   "parameter"

Definition at line 49 of file VOP_Node.h.

#define VOP_PARMORDER_NAME   "parmorder"

Definition at line 45 of file VOP_Node.h.

#define VOP_PARMRAMP_NODE_NAME   "rampparm"

Definition at line 51 of file VOP_Node.h.

#define VOP_RSL_PREFIX   "rsl_"

Definition at line 56 of file VOP_Node.h.

#define VOP_SNIPPET_NODE_NAME   "snippet"

Definition at line 53 of file VOP_Node.h.

#define VOP_SUBNET_VARIABLE_PREFIX   "_"

Prefix given to the subnet input variables.

Definition at line 60 of file VOP_Node.h.

#define VOP_VARIABLE_INOUT_MAX   2048
Examples:
VOP/VOP_CustomContext.C, and VOP/VOP_Switch.C.

Definition at line 57 of file VOP_Node.h.

Typedef Documentation

typedef std::vector< VOP_AutoConvertInfo > TAutoConvertInfos

Definition at line 101 of file VOP_Node.h.

typedef std::set< int > TIntSet

Definition at line 103 of file VOP_Node.h.

Definition at line 109 of file VOP_Node.h.

Definition at line 260 of file VOP_Node.h.

Definition at line 88 of file VOP_Node.h.

Definition at line 91 of file VOP_Node.h.

Definition at line 93 of file VOP_Node.h.

Definition at line 85 of file VOP_Node.h.

Definition at line 89 of file VOP_Node.h.

Definition at line 92 of file VOP_Node.h.

using VOP_VariableTagsHandle = UT_SharedPtr<const VOP_VariableTags>

Definition at line 81 of file VOP_Node.h.

Enumeration Type Documentation

Enumerator
VOP_UICHANGE_DEFINER 

Definition at line 62 of file VOP_Node.h.

Function Documentation

SYS_VISIBILITY_EXPORT void newVopOperator ( OP_OperatorTable table)
Examples:
VOP/VOP_Switch.C.

Definition at line 38 of file VOP_Switch.C.