FBComponent Class Reference


Detailed Description

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.

Examples
BasicOperations/DeletingGroups.py, BasicOperations/DeletingObjectBasedOnNameSpace.py, BasicOperations/FBComponent.py, BasicOperations/ReplaceNamespace.py

Inherits pyfbsdk::FBPlug.

Inherited by FBActorFace, FBAnimationLayer, FBAnimationNode, FBApplication, FBAssetItem, FBAssetMng, FBAudioClip, FBAudioIn, FBAudioOut, FBBox, FBCluster, FBConstraintManager, FBControlSet, FBDeck, FBDeformer, FBDeviceInstrument, FBDeviceOpticalMarker, FBEvaluateManager, FBFbxOptions, FBFCurve, FBFilter, FBFolder, FBGenericMenu, FBGenericMenuItem, FBGeometry, FBGroup, FBImage, FBKeyControl, FBKeyingGroup, FBMarkerSet, FBMenuManager, FBModelOpticalAdvanced, FBModelTemplate, FBMotionClip, FBOpticalGap, FBOpticalSegment, FBPlayerControl, FBPointCacheFile, FBPointCacheManager, FBPose, FBProfiler, FBReferenceTime, FBRenderer, FBRigidBody, FBScene, FBSet, FBSpreadPart, FBStory, FBStoryClip, FBStoryFolder, FBTake, FBTimeWarpManager, FBTreeNode, FBVideoGrabber, and FBViewerInfos.

List of all members.

Public Member Functions

  operator new (int stAllocateBlock)
  operator delete (pvMem)
  operator new (int stAllocateBlock, int blockType, str filename, int linenumber)
  RegisterPropertyEvent (FBPropertyEvent pPropertyEvent)
  UnregisterPropertyEvent (FBPropertyEvent pPropertyEvent)
  InvalidatePropertyEventsParents ()
int  GetInternalClassId ()
  FBComponentSetName (HFBComponent pObject, str pName)
str  FBComponentGetName (HFBComponent pObject)
  FBComponentSetLongName (HFBComponent pObject, str pName)
str  FBComponentGetLongName (HFBComponent pObject)
  __init__ (object pObject)
  Constructor.
  __del__ ()
  Destructor.
bool  FBCreate ()
  Open Reality Creation function.
  FBDestroy ()
  Open Reality destruction function.
  FBDelete ()
  Open Reality deletion function.
bool  SetHIObject (object pObject, bool pSDKComponent)
  Assign component to an internal pointer.
int  PropertyAdd (FBProperty Property)
  Add a property to the component's property manager.
  PropertyRemove (FBProperty Property)
  Remove a Property from the component's Property manager.
FBProperty  PropertyCreate (str pName, FBPropertyType pType, str pDataType, bool pAnimatable, bool pIsUser=False, FBProperty pReferenceSource=None)
  Create user or dynamic property.
FBObjectFlag  GetObjectFlags ()
  Get all Object Flags (concatenated).
  SetObjectFlags (FBObjectFlag pFlags)
  SetObjectFlags.
bool  HasObjectFlags (FBObjectFlag pFlags)
  Check whether a specific object flag is enabled.
  EnableObjectFlags (FBObjectFlag pFlags)
  Enable a specific Object Flags.
  DisableObjectFlags (FBObjectFlag pFlags)
  Disable a specific Object Flags.
  SetObjectStatus (FBObjectStatus pStatus, bool pValue)
  Enable/Disable a specific Object Status.
bool  GetObjectStatus (FBObjectStatus pStatus)
  Check to see if an object status is enabled.
  ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, str pNamespaceName, str pReplaceTo=None, bool pAddRight=True)
  ProcessNamespaceHierarchy.
  ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, str pNamespaceName, str pReplaceTo=None, bool pAddRight=True)
  ProcessObjectNamespace.
str  ClassName ()
  Get the class name.
  HardSelect ()
  HardSelect.
  IObject_Declare (Implementation)
  ICallback_Declare (Implementation)
bool  Is (int pTypeId)
  Returns true if object is of type TypeId.
int  GetTypeId ()
  GetTypeId( int pTypeId ).
  KObjectEvent (HIRegister pView, HKEventBase pEvent)

Public Attributes

HDataFBComponent  mLocalPtr
  Handle on HDataFBComponent.
FBPropertyManager  PropertyList
  Read Only Property: Manages all of the properties for the component.
FBPropertyListComponent  Components
  List: List of components.
FBPropertyListComponent  Parents
  List: Parents.
FBPropertyBase  Selected
  Read Write Property: Selected property.
FBPropertyString  Name
  Read Write Property: Unique name of object.
FBPropertyString  LongName
  Read Write Property: Name and namespace for object.
FBPropertyFolder  Folder
  Read Write Property: The folder that contain this component.
KObject  mDummyObject
  Internal Dummy Object for non KObject Components.
int  TypeInfo
  Contains the Type information of the object.

Protected Attributes

str  mName
  Name of the component.

Member Function Documentation

operator new ( int  stAllocateBlock )
operator delete ( pvMem  )
operator new ( int  stAllocateBlock,
int  blockType,
str  filename,
int  linenumber 
)
RegisterPropertyEvent ( FBPropertyEvent  pPropertyEvent )
UnregisterPropertyEvent ( FBPropertyEvent  pPropertyEvent )
InvalidatePropertyEventsParents ( )
int GetInternalClassId ( )
Returns:
Internal class Id

Reimplemented from FBPlug.

FBComponentSetName ( HFBComponent  pObject,
str  pName 
)
str FBComponentGetName ( HFBComponent  pObject )
FBComponentSetLongName ( HFBComponent  pObject,
str  pName 
)
str FBComponentGetLongName ( HFBComponent  pObject )
__del__ ( )

Destructor.

Reimplemented from FBPlug.

bool FBCreate ( )

Open Reality Creation function.

Returns:
Outcome of creation (true/false).

Reimplemented in FBAssetFile, FBAssetFolder, FBDevice, and FBDeviceOptical.

FBDestroy ( )

Open Reality destruction function.

Reimplemented in FBDevice, and FBDeviceOptical.

bool SetHIObject ( object  pObject,
bool  pSDKComponent 
)

Assign component to an internal pointer.

Reimplemented from FBPlug.

int PropertyAdd ( FBProperty  Property )

Add a property to the component's property manager.

Parameters:
Property The property to add to the property manager.
Returns:
Index in the property array where property was inserted.
PropertyRemove ( FBProperty  Property )

Remove a Property from the component's Property manager.

If the property was dynamically allocated, it is deleted.

Parameters:
Property The property to remove from the property manager.
FBProperty PropertyCreate ( str  pName,
FBPropertyType  pType,
str  pDataType,
bool  pAnimatable,
bool  pIsUser = False,
FBProperty  pReferenceSource = None 
)

Create user or dynamic property.

Parameters:
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.
FBObjectFlag GetObjectFlags ( )

Get all Object Flags (concatenated).

Returns:
Get all object flags in one call. Flags can be concatenated.
SetObjectFlags ( FBObjectFlag  pFlags )

SetObjectFlags.

Parameters:
pFlags Set flag values. Note: this function overwrites all flags with those passed in parameter.
bool HasObjectFlags ( FBObjectFlag  pFlags )

Check whether a specific object flag is enabled.

Parameters:
pFlags Flags to check if they are present.
Returns:
True if all flags in pFlags are enabled.
EnableObjectFlags ( FBObjectFlag  pFlags )

Enable a specific Object Flags.

Parameters:
pFlags Flags to enable.
DisableObjectFlags ( FBObjectFlag  pFlags )

Disable a specific Object Flags.

Parameters:
pFlags Flags to disable.
SetObjectStatus ( FBObjectStatus  pStatus,
bool  pValue 
)

Enable/Disable a specific Object Status.

Parameters:
pStatus Status to change.
pValue Value to change the status to.
bool GetObjectStatus ( FBObjectStatus  pStatus )

Check to see if an object status is enabled.

Parameters:
pStatus Status to query.
ProcessNamespaceHierarchy ( FBNamespaceAction  pNamespaceAction,
str  pNamespaceName,
str  pReplaceTo = None,
bool  pAddRight = True 
)

ProcessNamespaceHierarchy.

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.

Parameters:
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.
ProcessObjectNamespace ( FBNamespaceAction  pNamespaceAction,
str  pNamespaceName,
str  pReplaceTo = None,
bool  pAddRight = True 
)

ProcessObjectNamespace.

This function is the same as ProcessNamespaceHierarchy except that it applies only on the current object and not to the object's children.

str ClassName ( )

Get the class name.

Returns:
The class name (i.e. "FBComponent").

Reimplemented from FBPlug.

HardSelect ( )

HardSelect.

Selects the object, and emits a hard select event for UI update notfication.

ICallback_Declare ( Implementation  )

Reimplemented from FBPlug.

Reimplemented in FBModel.

bool Is ( int  pTypeId )

Returns true if object is of type TypeId.

Parameters:
pTypeId TypeId to compare object to.
Returns:
Result of the comparison.

Reimplemented from FBPlug.

int GetTypeId ( )

GetTypeId( int pTypeId ).

Returns:
The TypeInfo of the object

Reimplemented from FBPlug.

KObjectEvent ( HIRegister  pView,
HKEventBase  pEvent 
)

Member Data Documentation

HDataFBComponent mLocalPtr

Handle on HDataFBComponent.

Read Only Property: Manages all of the properties for the component.

List: List of components.

Reimplemented in FBScene.

FBPropertyBase Selected

Read Write Property: Selected property.

Read Write Property: Unique name of object.

Reimplemented in FBAssetMng, and FBMotionClip.

Read Write Property: Name and namespace for object.

FBPropertyFolder Folder

Read Write Property: The folder that contain this component.

KObject mDummyObject

Internal Dummy Object for non KObject Components.

str mName [protected]

Name of the component.

Contains the Type information of the object.

Reimplemented from FBPlug.


FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent
FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent FBComponent