Public Member Functions | |
void | InvalidateDAG () |
Invalidate the DAG and trigger parallel scheduling at the next frame. More... | |
bool | IsInteractiveMode () const |
Check if the application main loop is in interactive or offline render mode. More... | |
![]() | |
FBComponent (HIObject pObject) | |
Constructor. More... | |
virtual | ~FBComponent () |
Destructor. More... | |
virtual bool | FBCreate () |
Open Reality Creation function. More... | |
virtual void | FBDestroy () |
Open Reality destruction function. More... | |
virtual void | FBDelete () override |
Open Reality deletion function. More... | |
virtual bool | SetHIObject (HIObject pObject, bool pSDKComponent) override |
Assign component to an internal pointer. More... | |
virtual int | PropertyAdd (FBProperty *pProperty) |
Add a property to the component's property manager. More... | |
bool | PropertyAddReferenceProperty (FBProperty *pReferenceProperty) |
Add a reference property to the component's property manager. More... | |
void | PropertyRemove (FBProperty *pProperty) |
Remove a Property from the component's Property manager. More... | |
void | PropertyGetModifiedList (FBArrayTemplate< FBProperty * > &pPropList, FBPlugModificationFlag pModificationFlags) |
Get list of properties which have been modified since last loading. More... | |
FBProperty * | PropertyCreate (const char *pName, FBPropertyType pType, const char *pDataType, bool pAnimatable, bool pIsUser=false, FBProperty *pReferenceSource=NULL) |
Create user or dynamic property. More... | |
FBObjectFlag | GetObjectFlags () |
Get all Object Flags (concatenated). More... | |
void | SetObjectFlags (FBObjectFlag pFlags) |
SetObjectFlags. More... | |
bool | HasObjectFlags (FBObjectFlag pFlags) |
Check whether a specific object flag is enabled. More... | |
void | EnableObjectFlags (FBObjectFlag pFlags) |
Enable a specific Object Flags. More... | |
void | DisableObjectFlags (FBObjectFlag pFlags) |
Disable a specific Object Flags. More... | |
void | SetObjectStatus (FBObjectStatus pStatus, bool pValue) |
Enable/Disable a specific Object Status. More... | |
bool | GetObjectStatus (FBObjectStatus pStatus) |
Check to see if an object status is enabled. More... | |
bool | ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true) |
ProcessNamespaceHierarchy. More... | |
bool | ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true) |
ProcessObjectNamespace. More... | |
virtual const char * | ClassName () override |
Get the class name. More... | |
virtual bool | UseCustomPropertyViewSet () const |
Use the custom property viewSet or not. More... | |
const char * | GetFullName (void) |
Get the full name. More... | |
void | SetOwnerNamespace (FBNamespace *pOwnerNSObj) |
Set the owner Namespace object. More... | |
FBNamespace * | GetOwnerNamespace (void) |
Get the owner Namespace object. More... | |
FBFileReference * | GetOwnerFileReference (void) |
Get the owner FileReference object. More... | |
void | HardSelect () |
HardSelect. More... | |
virtual bool | Is (int pTypeId) override |
Returns true if object is of type TypeId. More... | |
virtual int | GetTypeId () override |
GetTypeId( int pTypeId ) More... | |
![]() | |
FBScriptWrapper * | GetWrapper () |
Return the wrapper interface of this FBObject. More... | |
void | AddWrapper (FBScriptWrapper *) |
void | RemoveWrapper (FBScriptWrapper *) |
Public Attributes | |
FBPropertyBool | ParallelPipeline |
Read/Write Property: true if transformation is evaluated in parallel. More... | |
FBPropertyBool | ParallelDeformation |
Read/Write Property: true if deformation is evaluated in parallel. More... | |
FBPropertyBool | UseGPUDeformation |
Read/Write Property: true if GPU deformation is used. More... | |
FBPropertyBool | FrameSkipOptimization |
Read/Write Property: if true, apply frame skip optimization during playback. off-line rendering don't use frame skip optimization. More... | |
FBPropertyParallelScheduleType | ParallelScheduleType |
DEPRICATED Read/Write Property: choose between serial and parallel DAG schedule algorithm. kFBParallelScheduleSimple and kFBParallelScheduleAdvanced will set ParallelEvalution to true. kFBParallelScheduleSerial will set ParallelEvalution to false More... | |
FBPropertyBool | ParallelEvaluation |
Read/Write Property: true if parallel DAG schedule algorithm is being used. false when serial algorithm is being used. More... | |
FBPropertyBool | DualQuaternionSkinning |
Read/Write Property: Using state of the Dual Quaternion for skinning (CPU Skinning or GPU Skinning). More... | |
FBPropertyInt | NodeCount |
Read only Property: Number of nodes to evaluate. More... | |
FBPropertyInt | DeviceCount |
Read only Property: Number of devices to evaluate. More... | |
![]() | |
FBPropertyManager | PropertyList |
Read Only Property: Manages all of the properties for the component. More... | |
FBPropertyListComponent | Components |
List: List of components. More... | |
FBPropertyListComponent | Parents |
List: Parents. More... | |
FBPropertyBool | Selected |
Read Write Property: Selected property. More... | |
FBPropertyString | Name |
Read Write Property: Unique name of object. More... | |
FBPropertyString | LongName |
Read Write Property: Name and namespace for object. More... | |
FBPropertyFolder | Folder |
Read Write Property: The folder that contain this component. More... | |
Callback function management for critical timing in the pipeline. | |
User could register two set of callback functions, one is to use global free function via RegisterEvaluationGlobalFunction / UnregisterEvaluationGlobalFunction, the other is to use class (with ICallback interface) member function via FBPropertyEvent (OnEvaluationPipelineEvent, OnRenderingPipelineEvent and OnSynchronizationEvent). Global free functions will be called first before all registered ICallback member functions. Users are expected to use these per frame callback for lightweight tasks, otherwise performance may be dropped. | |
FBPropertyEventCallbackEvalPipeline | OnEvaluationPipelineEvent |
For callback events at evaluation pipeline. More... | |
FBPropertyEventCallbackRenderPipeline | OnRenderingPipelineEvent |
For callback events at rendering pipeline. More... | |
FBPropertyEventCallbackSynPoint | OnSynchronizationEvent |
For callback events at synchronization point. More... | |
void | RegisterEvaluationGlobalFunction (kFBEvaluationGlobalFunctionCallback pCallback, FBGlobalEvalCallbackTiming pTiming) |
Register free callback function to critical timings / stages in the pipeline. More... | |
void | UnregisterEvaluationGlobalFunction (kFBEvaluationGlobalFunctionCallback pCallback, FBGlobalEvalCallbackTiming pTiming) |
Register free callback function to critical timings / stages in the pipeline. More... | |
static FBEvaluateManager & | TheOne () |
Get the global object for this class. More... | |
Additional Inherited Members | |
![]() | |
static int | GetInternalClassId () |
static void | FBComponentSetName (FBComponent *pObject, const char *pName) |
static const char * | FBComponentGetName (FBComponent *pObject) |
static void | FBComponentSetLongName (FBComponent *pObject, const char *pName) |
static const char * | FBComponentGetLongName (FBComponent *pObject) |
![]() | |
static int | TypeInfo |
Contains the Type information of the object. More... | |
![]() | |
bool | IsSDKComponent () |
Return whether or not item is an SDK component. More... | |
bool | ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a source connection. More... | |
bool | ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a destination connection. More... | |
bool | ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a source connection. More... | |
bool | ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
Add a destination connection. More... | |
bool | DisconnectDst (FBPlug *pDst) |
Remove a destination connection. More... | |
bool | DisconnectSrc (FBPlug *pSrc) |
Remove a source connection. More... | |
void | DisconnectAllSrc () |
Remove all source connections. More... | |
void | DisconnectAllDst () |
Remove all destination connections. More... | |
bool | DisconnectDstAt (int pIndex) |
Remove a destination connection at a specified index. More... | |
bool | DisconnectSrcAt (int pIndex) |
Remove a source connection at a specified index. More... | |
bool | ReplaceDstAt (int pIndex, FBPlug *pDst) |
Replace a destination connection at a specified index. More... | |
bool | ReplaceSrcAt (int pIndex, FBPlug *pSrc) |
Replace a source connection at a specified index. More... | |
bool | SwapSrc (int pIndexA, int pIndexB) |
Swap source connection at index A with source connection at index B. More... | |
bool | MoveSrcAt (int pIndex, int pAtIndex) |
Move source connection at pIndex to pAtIndex. More... | |
bool | MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc) |
Move source connection pSrc to the position of pAtSrc. More... | |
int | GetSrcCount () |
Get source connection count. More... | |
FBPlug * | GetSrc (int pIndex) |
Get a source connection's plug at specified index. More... | |
FBConnectionType | GetSrcType (int pIndex) |
Get a source connection's type at specified index. More... | |
int | GetDstCount () |
Get destination connection count. More... | |
FBPlug * | GetDst (int pIndex) |
Get a destination connection's plug at specified index. More... | |
FBConnectionType | GetDstType (int pIndex) |
Get a destination connection's type at specified index. More... | |
bool | BeginChange () |
Begins a change on multiple plugs. More... | |
void | EndChange () |
Ends a change on multiple plugs. More... | |
void | SetSelfModified (FBPlugModificationFlag pFlag, bool pBool) |
Set the plug's self modification flag. More... | |
bool | GetSelfModified (FBPlugModificationFlag pFlag) |
Tell if the plug's self has changed. More... | |
void | SetContentModified (FBPlugModificationFlag pFlag, bool pBool) |
Set the plug's owned property/object's modification flag. More... | |
bool | GetContentModified (FBPlugModificationFlag pFlag) |
Tell if the plug's content has changed. More... | |
int | GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove) |
Get plug's modified src/dst property/object connection added/removed List. More... | |
bool | RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask) |
Revert the plug's modification to original status. More... | |
void | SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue) |
Set the plug's status flag. More... | |
bool | GetStatusFlag (FBPlugStatusFlag pStatus) const |
Tell if the plug's status has changed. More... | |
FBPlug * | GetOwner () |
Get the owner of this plug. More... | |
FBPlug * | GetOwned (int pIndex) |
Get the owned plug at specified index. More... | |
int | GetOwnedCount () |
Get the owned plug count. More... | |
virtual bool | PlugDataNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0) |
PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only. More... | |
virtual bool | PlugStateNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0) |
PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only. More... | |
virtual bool | PlugNotify (FBConnectionAction pAction, FBPlug *pThis, int pIndex, FBPlug *pPlug=NULL, FBConnectionType pConnectionType=kFBConnectionTypeNone, FBPlug *pNewPlug=NULL) |
PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only. More... | |
![]() | |
static int | GetInternalClassId () |
Internal class Id. More... | |
![]() | |
bool | mAllocated |
Contain the Allocation State of the Component. More... | |
HIObject | mObject |
Handle on the Plug. More... | |
bool | mSDKComponent |
bool Plug is an SDK component. More... | |
![]() | |
static const char * | ClassGroupName |
ClassGroupName of the object. More... | |
static int | TypeInfo |
TypeInfo. More... | |
static int | mGlobalTypeInfo |
Represente the Type Index. More... | |
Definition at line 132 of file fbevaluatemanager.h.
void InvalidateDAG | ( | ) |
Invalidate the DAG and trigger parallel scheduling at the next frame.
bool IsInteractiveMode | ( | ) | const |
Check if the application main loop is in interactive or offline render mode.
void RegisterEvaluationGlobalFunction | ( | kFBEvaluationGlobalFunctionCallback | pCallback, |
FBGlobalEvalCallbackTiming | pTiming | ||
) |
Register free callback function to critical timings / stages in the pipeline.
pCallback | free function to be registered |
pTiming | callback timing to be registered |
|
static |
Get the global object for this class.
void UnregisterEvaluationGlobalFunction | ( | kFBEvaluationGlobalFunctionCallback | pCallback, |
FBGlobalEvalCallbackTiming | pTiming | ||
) |
Register free callback function to critical timings / stages in the pipeline.
pCallback | free callback to be unregistered |
pTiming | callback timing to be unregistered |
FBPropertyInt DeviceCount |
Read only Property: Number of devices to evaluate.
Definition at line 152 of file fbevaluatemanager.h.
FBPropertyBool DualQuaternionSkinning |
Read/Write Property: Using state of the Dual Quaternion for skinning (CPU Skinning or GPU Skinning).
Definition at line 149 of file fbevaluatemanager.h.
FBPropertyBool FrameSkipOptimization |
Read/Write Property: if true, apply frame skip optimization during playback. off-line rendering don't use frame skip optimization.
Definition at line 146 of file fbevaluatemanager.h.
FBPropertyInt NodeCount |
Read only Property: Number of nodes to evaluate.
Definition at line 151 of file fbevaluatemanager.h.
FBPropertyEventCallbackEvalPipeline OnEvaluationPipelineEvent |
For callback events at evaluation pipeline.
This callback will be invoked from different thread than the main thread in parallel pipeline setup. And this property is not exposed to pyfbsdk because pyfbsdk doesn't support multi-thread properly yet.
Definition at line 190 of file fbevaluatemanager.h.
FBPropertyEventCallbackRenderPipeline OnRenderingPipelineEvent |
For callback events at rendering pipeline.
Definition at line 191 of file fbevaluatemanager.h.
FBPropertyEventCallbackSynPoint OnSynchronizationEvent |
For callback events at synchronization point.
Definition at line 192 of file fbevaluatemanager.h.
FBPropertyBool ParallelDeformation |
Read/Write Property: true if deformation is evaluated in parallel.
Definition at line 144 of file fbevaluatemanager.h.
FBPropertyBool ParallelEvaluation |
Read/Write Property: true if parallel DAG schedule algorithm is being used. false when serial algorithm is being used.
Definition at line 148 of file fbevaluatemanager.h.
FBPropertyBool ParallelPipeline |
Read/Write Property: true if transformation is evaluated in parallel.
Definition at line 143 of file fbevaluatemanager.h.
FBPropertyParallelScheduleType ParallelScheduleType |
DEPRICATED Read/Write Property: choose between serial and parallel DAG schedule algorithm. kFBParallelScheduleSimple and kFBParallelScheduleAdvanced will set ParallelEvalution to true. kFBParallelScheduleSerial will set ParallelEvalution to false
Definition at line 147 of file fbevaluatemanager.h.
FBPropertyBool UseGPUDeformation |
Read/Write Property: true if GPU deformation is used.
Definition at line 145 of file fbevaluatemanager.h.