MotionBuilder SDK base class. More...
#include <fbcomponent.h>
Inherits FBPlug.
Inherited by FBAMMenu, FBActionManager, FBActorFace, FBAnimationLayer, FBAnimationNode, FBAnimationStack, FBApplication, FBApplyManagerRule, FBAssetItem, FBAssetMng, FBAudioClip, FBAudioIn, FBAudioOut, FBBox, FBCameraSwitcherAudioManager, FBCharacterManipulator, FBCharacterMarkerSet, FBCluster, FBCommPort, FBCommand, FBConsole, FBConsoleChannel, FBConstraintManager, FBConstructionHistory, FBControlSet, FBCustomManager, FBCycleCreator, FBDeck, FBDeformer, FBDeviceInstrument, FBDeviceOpticalMarker, FBDeviceSyncPacket, FBEvaluateManager, FBFCurve, FBFCurveCustomTangent, FBFCurveCustomTangentManager, FBFCurveEditorUtility, FBFCurveEventManager, FBFbxObject, FBFbxOptions, FBFileMonitoringManager, FBFilter, FBFolder, FBGenericMenu, FBGenericMenuItem, FBGeometry, FBHUDManager, FBImage, FBJLCooper, FBKeyControl, FBKeyingGroup, FBManipulator, FBMarkerSet, FBMenuManager, FBModelOpticalAdvanced, FBModelTemplate, FBModelVertexData, FBModuleManager, FBMotionBlend, FBMotionBlendEdit, FBMotionClip, FBMotionClip, FBMotionFileOptions, FBNamespace, FBOpticalGap, FBOpticalSegment, FBPlayerControl, FBPointCacheFile, FBPointCacheManager, FBPose, FBProfiler, FBPropertyViewManager, FBReferenceTime, FBRenderer, FBRendererCallback, FBRigidBody, FBScene, FBSpreadPart, FBStory, FBStoryClip, FBStoryFolder, FBStoryGroupClip, FBSyncReference, FBSystem, FBTCPIP, FBTake, FBTimeWarpManager, FBToolLayoutManager, FBTransportAudioManager, FBTreeNode, FBTrigger, FBTriggerBranch, FBTriggerGroup, FBTriggerManager, FBUndoManager, FBVideoGrabber, and FBVisualComponent.
Public Member Functions | |
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 *) |
Static Public Member Functions | |
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) |
Public Attributes | |
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... | |
Static Public Attributes | |
static int | TypeInfo |
Contains the Type information of the object. More... | |
Additional Inherited Members | |
![]() | |
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... | |
MotionBuilder SDK base class.
FBComponent defines common object characteristics, including creation and destruction methods. It is used to encapsulate internal application objects so they can be exposed to the SDK. It is also used as the base class to encapsulate objects with FBProperty data members and provides a scheme for property management. You cannot instantiate FBProperty objects. To reference a property, use an instance of an FBComponent object. The methods FBComponent::PropertyCreate and FBComponent::PropertyRemove can be used to modify an object's properties. Basic operators are overloaded in FBComponent. The constructor and destructor are created and defined with macros in the header files. Objects inheriting from FBComponent must define FBComponent::FBCreate(), and FBComponent::FBDestroy(). All memory management issues for the component should also be addressed here. Destroy an object with FBDelete(). The code sample FBComponent.py shows how to get a handle on a scene object via its name.
Definition at line 650 of file fbcomponent.h.
FBComponent | ( | HIObject | pObject | ) |
Constructor.
pObject | Object to copy component from (default is NULL). |
|
virtual |
Destructor.
|
overridevirtual |
Get the class name.
Reimplemented from FBPlug.
Reimplemented in FBCustomManager.
void DisableObjectFlags | ( | FBObjectFlag | pFlags | ) |
Disable a specific Object Flags.
pFlags | Flags to disable. |
void EnableObjectFlags | ( | FBObjectFlag | pFlags | ) |
Enable a specific Object Flags.
pFlags | Flags to enable. |
|
virtual |
Open Reality Creation function.
Reimplemented in FBDeviceCamera, FBDeviceSync, FBDeviceOptical, FBManipulator, FBDevice, FBConsole, FBCustomManager, FBAssetFolder, FBAssetFile, FBDeviceCameraLayout, and FBDeviceOpticalLayout.
|
overridevirtual |
Open Reality deletion function.
Reimplemented from FBPlug.
Reimplemented in FBVideoClip, FBLayeredTexture, FBTexture, FBStoryGroupClip, FBStoryClip, FBStoryTrack, FBStoryFolder, FBScene, FBMotionBlendEdit, FBMotionClip, FBModel, FBKeyingGroup, FBImage, FBSet, FBGroup, FBFolder, FBTake, FBAnimationLayer, FBAnimationStack, FBFCurveCustomTangent, FBFCurve, FBCharacterFace, FBActorFace, FBCharacterExtension, FBCharacter, FBActor, FBAudioClip, and FBGenericMenu.
|
virtual |
Open Reality destruction function.
Reimplemented in FBDeviceCamera, FBDeviceSync, FBDeviceOptical, FBDevice, FBConsole, and FBDeviceCameraLayout.
const char* GetFullName | ( | void | ) |
Get the full name.
|
static |
FBObjectFlag GetObjectFlags | ( | ) |
Get all Object Flags (concatenated).
bool GetObjectStatus | ( | FBObjectStatus | pStatus | ) |
Check to see if an object status is enabled.
pStatus | Status to query. |
FBFileReference* GetOwnerFileReference | ( | void | ) |
Get the owner FileReference object.
FBNamespace* GetOwnerNamespace | ( | void | ) |
Get the owner Namespace object.
|
overridevirtual |
GetTypeId( int pTypeId )
Reimplemented from FBPlug.
Reimplemented in FBCustomManager.
void HardSelect | ( | ) |
HardSelect.
Selects the object, and emits a hard select event for UI update notification.
bool HasObjectFlags | ( | FBObjectFlag | pFlags | ) |
Check whether a specific object flag is enabled.
pFlags | Flags to check if they are present. |
|
overridevirtual |
Returns true if object is of type TypeId.
pTypeId | TypeId to compare object to. |
Reimplemented from FBPlug.
Reimplemented in FBCustomManager.
bool ProcessNamespaceHierarchy | ( | FBNamespaceAction | pNamespaceAction, |
const char * | pNamespaceName, | ||
const char * | pReplaceTo = NULL , |
||
bool | pAddRight = true |
||
) |
ProcessNamespaceHierarchy.
New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This recursive function goes through the whole hierarchy (children) to add/replace the prefix. If you need to work on a single object, use the ProcessObjectPrefix function.
pNamespaceAction | Which operation to do on the hierarchy (children). |
pNamespaceName | The Namespace name on Add/Delete or the prefix to replace in case of replace. |
pReplaceTo | The new Namespace Name or NULL in case of add or delete. |
pAddRight | Whether to add the namespace on right-most or left-most side or other namespace. |
bool ProcessObjectNamespace | ( | FBNamespaceAction | pNamespaceAction, |
const char * | pNamespaceName, | ||
const char * | pReplaceTo = NULL , |
||
bool | pAddRight = true |
||
) |
ProcessObjectNamespace.
New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This function is the same as ProcessNamespaceHierarchy except that it applies only on the current object and not to the object's children.
pNamespaceAction | Which operation to do on the hierarchy (children). |
pNamespaceName | The Namespace name on Add/Delete or the prefix to replace in case of replace. |
pReplaceTo | The new Namespace Name or NULL in case of add or delete. |
pAddRight | Whether to add the namespace on right-most or left-most side or other namespace. |
|
virtual |
Add a property to the component's property manager.
pProperty | The property to add to the property manager. |
bool PropertyAddReferenceProperty | ( | FBProperty * | pReferenceProperty | ) |
Add a reference property to the component's property manager.
pReferenceProperty | The property to from an other object to add a reference to (property cannot be a custom ORSDK property). |
FBProperty* PropertyCreate | ( | const char * | pName, |
FBPropertyType | pType, | ||
const char * | pDataType, | ||
bool | pAnimatable, | ||
bool | pIsUser = false , |
||
FBProperty * | pReferenceSource = NULL |
||
) |
Create user or dynamic property.
pName | The name of the property. |
pType | Type of the property. See enum FBPropertyType. |
pDataType | DataType of the property. |
pAnimatable | To specify if the property can be animated. |
pIsUser | To specify if the property is available as a custom property or dynamic and attached to the object. |
pReferenceSource | Specifies the property that a reference refers to. |
void PropertyGetModifiedList | ( | FBArrayTemplate< FBProperty * > & | pPropList, |
FBPlugModificationFlag | pModificationFlags | ||
) |
Get list of properties which have been modified since last loading.
pPropList | property list to hold the modified properties. |
pModificationFlags | type of modification to query. |
void PropertyRemove | ( | FBProperty * | pProperty | ) |
Remove a Property from the component's Property manager.
If the property was dynamically allocated, it is deleted.
pProperty | The property to remove from the property manager. |
|
overridevirtual |
Assign component to an internal pointer.
void SetObjectFlags | ( | FBObjectFlag | pFlags | ) |
SetObjectFlags.
pFlags | Set flag values. Note: this function overwrites all flags with those passed in parameter. |
void SetObjectStatus | ( | FBObjectStatus | pStatus, |
bool | pValue | ||
) |
Enable/Disable a specific Object Status.
pStatus | Status to change. |
pValue | Value to change the status to. |
void SetOwnerNamespace | ( | FBNamespace * | pOwnerNSObj | ) |
Set the owner Namespace object.
|
inlinevirtual |
Use the custom property viewSet or not.
To have custom property view for custom subclass, modification bin/config/propertyview.fbx is required.
Definition at line 796 of file fbcomponent.h.
FBPropertyListComponent Components |
List: List of components.
Definition at line 842 of file fbcomponent.h.
FBPropertyFolder Folder |
Read Write Property: The folder that contain this component.
Definition at line 849 of file fbcomponent.h.
FBPropertyString LongName |
Read Write Property: Name and namespace for object.
Definition at line 846 of file fbcomponent.h.
FBPropertyString Name |
Read Write Property: Unique name of object.
Definition at line 845 of file fbcomponent.h.
FBPropertyListComponent Parents |
List: Parents.
Definition at line 843 of file fbcomponent.h.
FBPropertyManager PropertyList |
Read Only Property: Manages all of the properties for the component.
Definition at line 841 of file fbcomponent.h.
FBPropertyBool Selected |
Read Write Property: Selected property.
Definition at line 844 of file fbcomponent.h.
|
static |
Contains the Type information of the object.
Definition at line 663 of file fbcomponent.h.