GvNode Class Reference Graph View

#include <c4d_graphview.h>

Inheritance diagram for GvNode:

详细描述

The GvNode is a double BaseList2D node. Internally it has an operator that corresponds to GvOperatorData 。使用 GetOperatorContainer() to access most parameters.
Cannot be instantiated. Call GvNodeMaster::CreateNode() to create nodes.

私有成员函数

  GvNode ()
  ~GvNode ()

导航

GvNode *  GetNext (void)
GvNode *  GetPred (void)
GvNode *  GetUp (void)
GvNode *  GetDown (void)

杂项

void  Redraw (void)
const String   GetTitle ()
void  SetTitle (const maxon::String &title)
Bool   CreateOperator ()
GvNodeMaster *  GetNodeMaster (void)
GvOperatorData *  GetOperatorData (void)
Int32   GetOperatorID (void)
Int32   GetOwnerID (void)
Bool   IsGroupNode (void)

Port

GvPort *  AddPort ( GvPortIO io, Int32 id, GvPortFlags flags= GV_PORT_FLAG_IS_VISIBLE , Bool message=false)
Bool   AddPortIsOK ( GvPortIO io, Int32 id)
Bool   SetPortType ( GvPort *port, Int32 id)
Bool   ResetPortType ( Int32 id)
void  RemovePort ( GvPort *port, Bool message=true)
Bool   RemovePortIsOK ( GvPort *port)
void  RemoveUnusedPorts ( Bool message=true)
GvPort *  AddConnection ( GvNode *source_node, GvPort *source_port, GvNode *dest_node, GvPort *dest_port)
void  RemoveConnections (void)
void  GetPortList ( GvPortIO port, GvPortList &portlist)
Bool   GetPortDescription ( GvPortIO port, Int32 id, GvPortDescription *pd)
Int32   GetInPortCount (void)
Int32   GetOutPortCount (void)
GvPort *  GetInPort ( Int32 index)
GvPort *  GetOutPort ( Int32 index)
GvPort *  GetInPortFirstMainID ( Int32 id)
GvPort *  GetOutPortFirstMainID ( Int32 id)
GvPort *  GetInPortMainID ( Int32 id, Int32 &start)
GvPort *  GetOutPortMainID ( Int32 id, Int32 &start)
GvPort *  GetInPortSubID ( Int32 id)
GvPort *  GetOutPortSubID ( Int32 id)
GvPort *  GetPort ( Int32 sub_id)
Int32   GetPortIndex ( Int32 sub_id)

Calculate

GvPort *  CalculateInPortIndex ( Int32 port_index, GvRun *run, GvCalc *calc)
GvPort *  CalculateOutPortIndex ( Int32 port_index, GvRun *run, GvCalc *calc)
GvPort *  CalculateInPort ( GvPort *port, GvRun *run, GvCalc *calc)
GvPort *  CalculateOutPort ( GvPort *port, GvRun *run, GvCalc *calc)
Bool   SetRecalculate ( GvRun *r, Bool force_set=false)
Bool   CalculateRawData ( GvValueID value_id, const void *const data1, const void *const data2, void *dest, GvValueFlags calculation, Float parm1)

Operator Container

BaseContainer *  GetOpContainerInstance (void)
BaseContainer   GetOperatorContainer (void)
void  SetOperatorContainer (const BaseContainer &bc)

Operator Information/Data

const String   OperatorGetDetailedText (void)
const String   OperatorGetErrorString ( Int32 error)
Bool   OperatorSetData ( GvDataType type, void *data, GvOpSetDataMode mode)
Bool   OperatorIsSetDataAllowed ( GvDataType type, void *data, GvOpSetDataMode mode)
void  OperatorGetIcon ( IconData &dat)

Node State

Bool   GetSelectState (void)
Bool   GetFailureState (void)
Bool   GetDisabledState (void)
Bool   GetOpenState (void)
void  SetOpenState ( Bool state)
Bool   GetLockState (void)
void  SetLockState ( Bool state)
Bool   GetShowPortNamesState (void)
void  SetShowPortNamesState ( Bool state)

Calculation Handler

GvValue *  AllocCalculationHandler ( Int32 main_id, GvCalc *calc, GvRun *run, Int32 singleport)
void  FreeCalculationHandler ( GvValue *&value)

Additional Inherited Members

-  Public Member Functions inherited from BaseList2D
const Char *  GetViewportRenderId ( VIEWPORT_RENDER_ID typeId) const
BaseList2D *  GetNext ()
BaseList2D *  GetPred ()
void  SetBit ( Int32 mask)
Bool   GetBit ( Int32 mask) const
void  DelBit ( Int32 mask)
void  ToggleBit ( Int32 mask)
Int32   GetAllBits () const
void  SetAllBits ( Int32 bits)
void  SetBitEx ( Int32 mask, Int32 flags)
BaseContainer   GetData ()
void  SetData (const BaseContainer &bc, Bool add=true)
const BaseContainer *  GetDataInstance () const
BaseContainer *  GetDataInstance ()
const BaseContainer &  GetDataInstanceRef () const
BaseContainer &  GetDataInstanceRef ()
String   GetName () const
void  SetName (const maxon::String &name)
String   GetBubbleHelp ()
Bool   TransferGoal ( BaseList2D *dst, Bool undolink)
Bool   TransferMarker ( BaseList2D *dst) const
Bool   比例 ( Float scale)
Bool   编辑 ()
void  GetIcon ( IconData *dat)
GeListHead *  GetNLARoot ()
BaseList2D *  AnimationLayerRemap ( BaseObject **layer=nullptr)
String   GetTypeName ()
BaseList2D *  GetMain () const
void  InsertTrackSorted ( CTrack *track)
Bool   AddEventNotification ( BaseList2D *bl, NOTIFY_EVENT eventid, NOTIFY_EVENT_FLAG flags, const BaseContainer *data)
Bool   RemoveEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   FindEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
DESCIDSTATE   GetDescIDState (const DescID &id, Bool tolerant) const
GeListHead *  GetOverrideRoot ()
BaseOverride *  GetFirstOverride ()
GeListHead *  GetShaderRepositoryRoot ()
GeListHead *  GetHiddenShaderRoot ()
maxon::NimbusInterface *  GetNimbusRef (const maxon::Id &spaceId) const
maxon::Result < maxon::NimbusInterface * >  GetOrCreateNimbusRef (const maxon::Id &spaceId)
void  RemoveNimbusRef (const maxon::Id &spaceId)
maxon::Result < maxon::HashMap < maxon::Id , maxon::ForwardRef < maxon::NimbusRef > > >  GetAllNimbusRefs () const
Bool   IsNodeBased () const
void  GetMarkerStampEx ( UInt32 *l1, UInt32 *l2)
const GeMarker &  GetMarker () const
void  SetMarker (const GeMarker &m)
Bool   AddUniqueID ( Int32 appid, const Char *const mem, Int bytes)
Bool   FindUniqueID ( Int32 appid, const Char *&mem, Int &bytes) const
Int32   GetUniqueIDCount () const
Bool   GetUniqueIDIndex ( Int32 idx, Int32 &id, const Char *&mem, Int &bytes) const
Bool   SetAnimatedParameter ( CTrack *track, const DescID &id, const GeData &t_data1, const GeData &t_data2, Float mix, DESCFLAGS_SET flags)
Bool   GetAnimatedParameter (const DescID &id, GeData &t_data1, GeData &t_data2, Float &mix, DESCFLAGS_GET flags)
BaseShader *  GetFirstShader () const
void  InsertShader ( BaseShader *shader, BaseShader *pred=nullptr)
void  ClearKeyframeSelection ()
Bool   FindKeyframeSelection (const DescID &id)
Bool   SetKeyframeSelection (const DescID &id, Bool selection)
Bool   KeyframeSelectionContent ()
LayerObject *  GetLayerObject ( BaseDocument *doc)
Bool   SetLayerObject ( LayerObject *layer)
const LayerData *  GetLayerData ( BaseDocument *doc, Bool rawdata=false)
Bool   SetLayerData ( BaseDocument *doc, const LayerData &data)
GeListHead *  GetCTrackRoot ()
CTrack *  GetFirstCTrack ()
CTrack *  FindCTrack (const DescID &id)
-  Public Member Functions inherited from GeListNode
GeListNode *  GetNext ()
GeListNode *  GetPred ()
GeListNode *  GetDown ()
GeListNode *  GetUp ()
GeListNode *  GetDownLast ()
void  InsertBefore ( GeListNode *bl)
void  InsertAfter ( GeListNode *bl)
void  InsertUnder ( GeListNode *bl)
void  InsertUnderLast ( GeListNode *bl)
void  移除 ()
GeListHead *  GetListHead ()
Int32   GetNodeID ( Int32 index=0) const
template<typename CAST >
const CAST *  GetNodeData ( Int32 index=0) const
template<typename CAST >
CAST *  GetNodeData ( Int32 index=0)
void  SetCustomData ( GeListNode *node)
GeListNode *  GetCustomData ()
BaseDocument *  GetDocument ()
Int32   GetBranchInfo ( BranchInfo *info, Int32 max, GETBRANCHINFO flags)
Bool   IsDocumentRelated ()
Int32   GetInfo ()
Bool   GetNBit ( NBIT bit) const
UInt32   GetNBitMask ( Int32 index) const
Bool   ChangeNBit ( NBIT bit, NBITCONTROL bitmode)
-  Public Member Functions inherited from C4DAtom
Int32   GetType () const
Int32   GetRealType () const
Int32   GetDiskType () const
Bool   IsInstanceOf ( Int32 id) const
Int32   GetClassification () const
Bool   消息 ( Int32 type, void *data=nullptr)
Bool   MultiMessage ( MULTIMSG_ROUTE flags, Int32 type, void *data)
C4DAtom *  GetClone ( COPYFLAGS flags, AliasTrans *trn)
Bool   CopyTo ( C4DAtom *dst, COPYFLAGS flags, AliasTrans *trn)
Bool   读取 ( HyperFile *hf, Int32 id, Int32 level)
Bool   Write ( HyperFile *hf)
Bool   ReadObject ( HyperFile *hf, Bool readheader)
Bool   WriteObject ( HyperFile *hf)
Bool   GetDescription ( 描述 *description, DESCFLAGS_DESC flags)
Bool   GetParameter (const DescID &id, GeData &t_data, DESCFLAGS_GET flags)
Bool   SetParameter (const DescID &id, const GeData &t_data, DESCFLAGS_SET flags)
DynamicDescription *  GetDynamicDescription ()
Bool   GetEnabling (const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
Bool   TranslateDescID (const DescID &id, DescID &res_id, C4DAtom *&res_at)
UInt32   GetDirty ( DIRTYFLAGS flags) const
void  SetDirty ( DIRTYFLAGS flags)
UInt32   GetHDirty ( HDIRTYFLAGS mask) const
void  SetHDirty ( HDIRTYFLAGS mask)
-  Static Public Member Functions inherited from BaseList2D
static BaseList2D *  Alloc ( Int32 type)
static void  Free ( BaseList2D *&bl)
-  Static Public Attributes inherited from BaseList2D
static const Int32   SETBIT_FLAG_NODIRTY
static const Int32   SETBIT_FLAG_REMOVE

构造函数 & 析构函数文档编制

◆  GvNode()

GvNode () private

◆  ~GvNode()

~ GvNode () private

成员函数文档编制

◆  GetNext()

GvNode * GetNext ( void  )

Gets the next GV node in the list. Convenience version of GeListNode::GetNext() .

返回
The next GV node, or nullptr if there is none. Cinema 4D owns the pointed node.

◆  GetPred()

GvNode * GetPred ( void  )

Gets the previous GV node in the list. Convenience version of GeListNode::GetPred() .

返回
The previous GV node, or nullptr if there is none. Cinema 4D owns the pointed node.

◆  GetUp()

GvNode * GetUp ( void  )

Gets the parent node of the GV node. Convenience version of GeListNode::GetUp() .

返回
The parent node, or nullptr if there is none. Cinema 4D owns the pointed node.

◆  GetDown()

GvNode * GetDown ( void  )

Gets the first child node of the GV node. Convenience version of GeListNode::GetDown() .

返回
The first child node, or nullptr if there is none. Cinema 4D owns the pointed node.

◆  Redraw()

void Redraw ( void  )

Redraws the GV node.

◆  GetTitle()

const String GetTitle ( )

Gets the title of the GV node.

返回
The title.

◆  SetTitle()

void SetTitle ( const maxon::String &  title )

Sets the title of the GV node.

参数
[in] title The title to set.

◆  CreateOperator()

Bool CreateOperator ( )

Creates the internal operator.

注意
Mainly this means that ports are added and that GvOperatorData::iCreateOperator() is called.
返回
true if successful, otherwise false .

◆  GetNodeMaster()

GvNodeMaster * GetNodeMaster ( void  )

Retrieves the node master that the GV node belongs to.

返回
The node master of this node. Cinema 4D owns the pointed node master.

◆  GetOperatorData()

GvOperatorData * GetOperatorData ( void  )

Retrieves the operator data for the GV node.

返回
The operator data, or nullptr . The node owns the pointed operator data.

◆  GetOperatorID()

Int32 GetOperatorID ( void  )

Retrieves the operator ID for the GV node.

返回
The operator ID.

◆  GetOwnerID()

Int32 GetOwnerID ( void  )

Retrieves the owner ID of the GV node.

返回
The owner ID. Here are the predefined IDs: ID_GV_OWNER

◆  IsGroupNode()

Bool IsGroupNode ( void  )

Checks if the GV node is a group node.

注意
To access the content of a group node use the standard GeListNode navigation methods.
返回
true if the GV node is a group node, otherwise false .

◆  AddPort()

GvPort * AddPort ( GvPortIO   io ,
Int32   id ,
GvPortFlags   flags = GV_PORT_FLAG_IS_VISIBLE ,
Bool   message = false  
)

Adds a port to the GV node and returns a pointer to it.

参数
[in] io The IO mode of the port to create: GvPortIO
[in] id The ID of the port to create.
[in] flags The port flags: GvPortFlags
[in] message 若 true the operator receives a message when the port is added.
返回
The created port, or nullptr if failed. The node owns the pointed port.

◆  AddPortIsOK()

Bool AddPortIsOK ( GvPortIO   io ,
Int32   id  
)

Checks if it is OK to add a port to the GV node. Used to check if a call to AddPort() would succeed.

参数
[in] io The IO mode of the port to create: GvPortIO
[in] id The ID of the port to create.
返回
true if it is OK to add the port, otherwise false .

◆  SetPortType()

Bool SetPortType ( GvPort *  port ,
Int32   id  
)

Changes the type of a port of the GV node. Used to manage dynamic data ports.

参数
[in] port A port of the GV node. The caller owns the pointed port.
[in] id The port ID.
返回
true if the port type was set, otherwise false .

◆  ResetPortType()

Bool ResetPortType ( Int32   id )

Changes the type of the port. Used to manage dynamic data ports.

参数
[in] id The port ID.
返回
true if the port type was reset, otherwise false .

◆  RemovePort()

void RemovePort ( GvPort *  port ,
Bool   message = true  
)

Removes a port from the GV node.

参数
[in] port A port of the GV node to remove. The caller owns the pointed port.
[in] message 若 true the operator receives a message when the port is removed.

◆  RemovePortIsOK()

Bool RemovePortIsOK ( GvPort *  port )

Checks if it is OK to remove a port from this node. Used to check if a call to RemovePort() would succeed.

参数
[in] port A port of the GV node to remove. The caller owns the pointed port.
返回
true if it is OK to remove the port, otherwise false .

◆  RemoveUnusedPorts()

void RemoveUnusedPorts ( Bool   message = true )

Removes all unused ports from the GV node.

参数
[in] message 若 true the operator receives a message when ports are removed.

◆  AddConnection()

GvPort * AddConnection ( GvNode *  source_node ,
GvPort *  source_port ,
GvNode *  dest_node ,
GvPort *  dest_port  
)

Adds a connection between the source_port of source_node and dest_port of dest_node .

注意
Has to be called for the destination node of a connection.
Does not check if the connection is valid. Always combine it with a call to GvNodeMaster::IsConnectionValid() : if (nm->IsConnectionValid(source_node, source_port, dest_node, dest_port, source_node_out, source_port_out, dest_node_out, dest_port_out)) { AddConnection (source_node_out, source_port_out, dest_node_out, dest_port_out); }
参数
[in] source_node The source node. The caller owns the pointed node.
[in] source_port The source port. The caller owns the pointed port.
[in] dest_node The destination node. The caller owns the pointed node.
[in] dest_port The destination port. The caller owns the pointed port.
返回
The dest_port ,或 nullptr if the operation failed.

◆  RemoveConnections()

void RemoveConnections ( void  )

Removes all connections from all ports of the GV node.

◆  GetPortList()

void GetPortList ( GvPortIO   port ,
GvPortList &  portlist  
)

Retrieves the list of port for the GV node.

参数
[in] port Only retrieve ports with the passed IO mode: GvPortIO
[out] portlist Filled with the ports from the node.

◆  GetPortDescription()

Bool GetPortDescription ( GvPortIO   port ,
Int32   id ,
GvPortDescription *  pd  
)

Retrieves the description for a port of the GV node.

参数
[in] port The port IO mode: GvPortIO
[in] id The port ID.
[out] pd Filled with the port description. The caller owns the pointed GvPortDescription .
返回
true if the port description was retrieved, otherwise false .

◆  GetInPortCount()

Int32 GetInPortCount ( void  )

Gets the number of input ports of the GV node.

返回
The number of input ports.

◆  GetOutPortCount()

Int32 GetOutPortCount ( void  )

Gets the number of output ports of the GV node.

返回
The number of output ports.

◆  GetInPort()

GvPort * GetInPort ( Int32   index )

Retrieves the input port at index .

参数
[in] index The input port index: 0 <= index < GetInPortCount()
返回
The retrieved input port, or nullptr if failed. The GV node owns the pointed port.

◆  GetOutPort()

GvPort * GetOutPort ( Int32   index )

Retrieves the output port at index .

参数
[in] index The output port index: 0 <= index < GetOutPortCount()
返回
The retrieved output port, or nullptr if failed. The GV node owns the pointed port.

◆  GetInPortFirstMainID()

GvPort * GetInPortFirstMainID ( Int32   id )

Retrieves an input port by main ID. The first port found is returned.

参数
[in] id The port main ID.
返回
The retrieved input port, or nullptr if failed. The GV node owns the pointed port.

◆  GetOutPortFirstMainID()

GvPort * GetOutPortFirstMainID ( Int32   id )

Retrieves an output port by main ID. The first port found is returned.

参数
[in] id The port main ID.
返回
The retrieved output port, or nullptr if failed. The GV node owns the pointed port.

◆  GetInPortMainID()

GvPort * GetInPortMainID ( Int32   id ,
Int32 &  start  
)

Retrieves an input port by main ID. The first port found with index greater or equal than start is returned.

参数
[in] id The port main ID.
[in,out] start The start index: 0 <= start <= GetInPortCount() . Assigned a suitable value for consecutive calls, i.e. the next index.
返回
The retrieved input port, or nullptr if failed. The GV node owns the pointed port.

◆  GetOutPortMainID()

GvPort * GetOutPortMainID ( Int32   id ,
Int32 &  start  
)

Retrieves an output port by main ID. The first port found with index greater or equal than start is returned.

参数
[in] id The port main ID.
[in,out] start The start index: 0 <= start <= GetInPortCount() . Assigned a suitable value for consecutive calls, i.e. the next index.
返回
The retrieved output port, or nullptr if failed. The GV node owns the pointed port.

◆  GetInPortSubID()

GvPort * GetInPortSubID ( Int32   id )

Retrieves an input port by sub ID.

参数
[in] id The port sub ID.
返回
The retrieved input port, or nullptr if failed. The GV node owns the pointed port.

◆  GetOutPortSubID()

GvPort * GetOutPortSubID ( Int32   id )

Retrieves an output port by sub ID.

参数
[in] id The port sub ID.
返回
The retrieved output port, or nullptr if failed. The GV node owns the pointed port.

◆  GetPort()

GvPort * GetPort ( Int32   sub_id )

Retrieves a port by sub ID.

参数
[in] sub_id The port sub ID.
返回
The retrieved port, or nullptr if failed. The GV node owns the pointed port.

◆  GetPortIndex()

Int32 GetPortIndex ( Int32   sub_id )

Gets the index of a port by sub ID.

参数
[in] sub_id The port sub ID.
返回
The port index.

◆  CalculateInPortIndex()

GvPort * CalculateInPortIndex ( Int32   port_index ,
GvRun *  run ,
GvCalc *  calc  
)

Calculates an input port by index. Equivalent to GetInPort(port_index)->GvPort::Calculate(this, run, calc) .

警告
CalculateInPortIndex() should normally not be used. Use GvValue::Calculate() instead.
参数
[in] port_index The port index: 0 <= start <= GetInPortCount()
[in] run The run helper. The caller owns the pointed run helper.
[in] calc The calculation helper. The caller owns the pointed calculation helper.
返回
The calculated port, or nullptr . The GV node owns the pointed port.

◆  CalculateOutPortIndex()

GvPort * CalculateOutPortIndex ( Int32   port_index ,
GvRun *  run ,
GvCalc *  calc  
)

Calculates an output port by index. Equivalent to GetOutPort(port_index)->GvPort::Calculate(this, run, calc) .

警告
CalculateOutPortIndex() should normally not be used. Use GvValue::Calculate() instead.
参数
[in] port_index The port index: 0 <= start <= GetOutPortCount()
[in] run The run helper. The caller owns the pointed run helper.
[in] calc The calculation helper. The caller owns the pointed calculation helper.
返回
The calculated port, or nullptr . The GV node owns the pointed port.

◆  CalculateInPort()

GvPort * CalculateInPort ( GvPort *  port ,
GvRun *  run ,
GvCalc *  calc  
)

Calculates an input port.

警告
CalculateInPort() should normally not be used. Use GvValue::Calculate() instead.
参数
[in] port The input port to calculate. The caller owns the pointed port.
[in] run The run helper. The caller owns the pointed run helper.
[in] calc The calculation helper. The caller owns the pointed calculation helper.
返回
The calculated port, or nullptr . The GV node owns the pointed port.

◆  CalculateOutPort()

GvPort * CalculateOutPort ( GvPort *  port ,
GvRun *  run ,
GvCalc *  calc  
)

Calculates an output port.

警告
CalculateOutPort() should normally not be used. Use GvValue::Calculate() instead.
参数
[in] port The output port to calculate. The caller owns the pointed port.
[in] run The run helper. The caller owns the pointed run helper.
[in] calc The calculation helper. The caller owns the pointed calculation helper.
返回
The calculated port, or nullptr . The GV node owns the pointed port.

◆  SetRecalculate()

Bool SetRecalculate ( GvRun *  r ,
Bool   force_set = false  
)

Equivalents to GvPort::SetRecalculate() for each output port of the GV node.

参数
[in] r The run helper. The caller owns the pointed run helper.
[in] force_set Forces all nodes to be set to be recalculated, even if they seem to be valid.
返回
true if successful, otherwise false .

◆  GetOpContainerInstance()

BaseContainer * GetOpContainerInstance ( void  )

Retrieves a pointer to the internal operator's container. This means that the container can be changed directly.

返回
The operator's container. The GV node owns the pointed container.

◆  GetOperatorContainer()

BaseContainer GetOperatorContainer ( void  )

Retrieves a copy of the internal operator's container.

返回
A copy of the operator's container.

◆  SetOperatorContainer()

void SetOperatorContainer ( const BaseContainer &  bc )

Sets the internal operator's container.

参数
[in] bc The container to set for the operator.

◆  OperatorGetDetailedText()

const String OperatorGetDetailedText ( void  )

Gets the detailed text of the operator.

返回
The detailed text.

◆  OperatorGetErrorString()

const String OperatorGetErrorString ( Int32   error )

Gets error strings for the operator.

参数
[in] error The error.
返回
The error string.

◆  OperatorSetData()

Bool OperatorSetData ( GvDataType   type ,
void *  data ,
GvOpSetDataMode   mode  
)

Sets data in the operator.

另请参阅
GvOperatorData::SetData .
参数
[in] type The data type: GvDataType
[in] data The data pointer. The format depends on type . The caller owns the pointed data.
[in] mode The set data mode: GvOpSetDataMode
返回
true if the data was set, otherwise false .

◆  OperatorIsSetDataAllowed()

Bool OperatorIsSetDataAllowed ( GvDataType   type ,
void *  data ,
GvOpSetDataMode   mode  
)

Checks if a call to OperatorSetData() is allowed.

参数
[in] type The data type: GvDataType
[in] data The data pointer. The format depends on type . The caller owns the pointed data.
[in] mode The set data mode: GvOpSetDataMode
返回
true if the data can be set, otherwise false .

◆  OperatorGetIcon()

void OperatorGetIcon ( IconData &  dat )

Retrieves the operator icon.

参数
[in] dat Filled with the operator icon data.

◆  GetSelectState()

Bool GetSelectState ( void  )

Gets the selection state of the GV node.

返回
The selection state.

◆  GetFailureState()

Bool GetFailureState ( void  )

Gets the failure state of the GV node.

返回
The failure state.

◆  GetDisabledState()

Bool GetDisabledState ( void  )

Gets the disabled state of the GV node.

返回
The disabled state.

◆  GetOpenState()

Bool GetOpenState ( void  )

Gets the open state of the GV node.

返回
The open state.

◆  SetOpenState()

void SetOpenState ( Bool   state )

Sets the open state of the GV node.

参数
[in] state The open state.

◆  GetLockState()

Bool GetLockState ( void  )

Gets the lock state of the GV node.

返回
The lock state.

◆  SetLockState()

void SetLockState ( Bool   state )

Sets the lock state of the GV node.

参数
[in] state The lock state.

◆  GetShowPortNamesState()

Bool GetShowPortNamesState ( void  )

Gets the show port name state of the GV node.

返回
The show port name state.

◆  SetShowPortNamesState()

void SetShowPortNamesState ( Bool   state )

Sets the show port name state of the GV node.

参数
[in] state The show port name state.

◆  AllocCalculationHandler()

GvValue * AllocCalculationHandler ( Int32   main_id ,
GvCalc *  calc ,
GvRun *  run ,
Int32   singleport  
)

Allocates a calculation handler for the ports of a main ID of the GV node.
Free the allocated handler with FreeCalculationHandler() .

参数
[in] main_id The main ID.
[in] calc The calculation helper. The caller owns the pointed calculation helper.
[in] run The run helper. The caller owns the pointed run helper.
[in] singleport The port index if the handler should be for a specific port. Otherwise pass GV_MULTIPLE_PORTS .
返回
The allocated handler, or nullptr if failed.

◆  FreeCalculationHandler()

void FreeCalculationHandler ( GvValue *&  value )

Frees calculation handlers allocated with AllocCalculationHandler() .

参数
[in,out] value The calculation handler to free. Set to nullptr afterwards.

◆  CalculateRawData()

Bool CalculateRawData ( GvValueID   value_id ,
const void *const  data1 ,
const void *const  data2 ,
void *  dest ,
GvValueFlags   calculation ,
Float   parm1  
)

Convenience function to do calculation with unknown data.
Retrieves the handler for value_id and then calls GV_VALUE_HANDLER::Calculate (userdata, value_id , data1 , data2 , dest , 0, calculation , parm1 ).

另请参阅
GvPort::CalculateRawData() for a similar functionality for ports.
参数
[in] value_id Determines the type of the data parameters.
[in] data1 The first data. The caller owns the pointed data.
Points to GV data. The layout of the pointed data is determined by value_id .
[in] data2 The second data. The caller owns the pointed data.
Points to GV data. The layout of the pointed data is determined by value_id .
[out] dest The destination. The caller owns the pointed data.
Points to GV data. The layout of the pointed data is determined by value_id .
[in] calculation The calculation to perform: GvValueFlags
[in] parm1 An additional parameter.
返回
true if the result of the calculation was GV_CALC_ERR_NONE , otherwise false .
GvNode::AddConnection
GvPort * AddConnection(GvNode *source_node, GvPort *source_port, GvNode *dest_node, GvPort *dest_port)
定义: c4d_graphview.h:597