Open Reality Reference Guide
FBMotionFileOptions Class Reference

Customize motion file loading. More...

#include <fbmotionfileoptions.h>

Inheritance diagram for FBMotionFileOptions:

Public Member Functions

 FBMotionFileOptions (FBStringList *pStringList, HIObject pObject=NULL)
 Constructor. More...
 
int GetTakeCount () const
 Return the take count in the file to be loaded. More...
 
bool GetTakeSelect (int pTakeIndex) const
 Return true if the take will be loaded. More...
 
void SetTakeSelect (int pTakeIndex, bool pSelect)
 Indicate if the take will be loaded. More...
 
const char * GetTakeName (int pTakeIndex) const
 Get the take name. More...
 
void SetTakeName (int pTakeIndex, const char *pName)
 Set the take name. More...
 
FBTime GetTakeStart (int pTakeIndex)
 Return the Take Start time. More...
 
void SetTakeStart (int pTakeIndex, FBTime pStartTime)
 Set the Take Start time. More...
 
FBTime GetTakeStop (int pTakeIndex)
 Return the Take Stop time. More...
 
void SetTakeStop (int pTakeIndex, FBTime pStopTime)
 Set the Take Stop time. More...
 
int GetTakeSamples (int pTakeIndex)
 Return the number of samples. More...
 
void SetTakeSamples (int pTakeIndex, int pSamplesCount)
 Set the number of samples for a particular take. More...
 
FBTimeMode GetTakeSamplingRateMode (int pTakeIndex)
 Return the sampling rate mode. More...
 
double GetTakeSamplingRate (int pTakeIndex)
 Return the actual sampling rate as a double, useful when you have a custom sampling rate. More...
 
void SetTakeSamplingRate (int pTakeIndex, FBTimeMode pTimeMode, double pCustomSamplingRate=30.0)
 Set the sampling rate for a particular take. More...
 
- Public Member Functions inherited from FBComponent
 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...
 
FBPropertyPropertyCreate (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...
 
FBNamespaceGetOwnerNamespace (void)
 Get the owner Namespace object. More...
 
FBFileReferenceGetOwnerFileReference (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...
 
- Public Member Functions inherited from FBWrapperHolder
FBScriptWrapperGetWrapper ()
 Return the wrapper interface of this FBObject. More...
 
void AddWrapper (FBScriptWrapper *)
 
void RemoveWrapper (FBScriptWrapper *)
 

Public Attributes

FBPropertyBool CreateInsteadOfMerge
 Read Write Property: If set to true, the motion will imported/models will be created in the scene, if set to false, the motion will be merged. More...
 
FBPropertyModelSelection ModelSelection
 Common settings when merging, unused with the CreateInsteadOfMerge property is set to true. More...
 
FBPropertyBool IgnoreModelType
 Read Write Property: If set to true, model type will not be considered when finding a matching model in the scene. More...
 
FBPropertyBool CreateUnmatchedModels
 Read Write Property: If set to true, nodes will be created to match the hierarchical structure of the imported file. More...
 
FBPropertyBool ImportScaling
 Read Write Property: If set to true, scaling values will be imported. More...
 
FBPropertyBool ImportDOF
 Read Write Property: If set to true, the DOF value will be imported from the file. More...
 
FBPropertyTakeSpanOnLoad TakeStartEnd
 Read Write Property: Indicates how the start/end value of the take will be modified. More...
 
FBPropertyBool CreateReferenceNode
 Settings based on file type. More...
 
FBPropertyBool KeepDummyNode
 Read Write Property: If set to true, dummy bones from the file are not removed. Used for asf/amc files. More...
 
FBPropertyBool SetLimits
 Read Write Property: If set to true, use motion limits. Used for asf/amc files. More...
 
FBPropertyBool BaseTranslationOnRotationOffset
 Read Write Property: If set to true, the base translation will be imported as Rotation Pivot offset. Used for htr, asf/amc More...
 
FBPropertyBool BaseRotationOnPreRotation
 Read Write Property: If set to true, the base rotation will be imported as Pre Rotation. Used for htr, asf/amc files. More...
 
FBPropertyBool CreateOpticalSegments
 Read Write Property: If set to true, optical segments will be created. Used for trc, c3d files. More...
 
FBPropertyBool CreateUnusedOpticalSegments
 Read Write Property: If set to true, unused optical segments will be created. Used for trc, c3d files. More...
 
FBPropertyBool SetOccludedToLastValidPosition
 Read Write Property: If set to true, occluded segments will be set to their last valid position. Used for trc, c3d files. More...
 
FBPropertyBool KeepActorPrefix
 Read Write Property: If set to true, the Actor prefix will be kept when naming each optical marker. Used with c3d files. More...
 
FBPropertyUpAxis UpAxisUsedInFile
 Read Write Property: Indicated the up axis used in the motion file. Only effective when loading c3d files. More...
 
- Public Attributes inherited from FBComponent
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...
 

Additional Inherited Members

- Static Public Member Functions inherited from FBComponent
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 Public Attributes inherited from FBComponent
static int TypeInfo
 Contains the Type information of the object. More...
 
- Protected Member Functions inherited from FBPlug
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...
 
FBPlugGetSrc (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...
 
FBPlugGetDst (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...
 
FBPlugGetOwner ()
 Get the owner of this plug. More...
 
FBPlugGetOwned (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 Protected Member Functions inherited from FBPlug
static int GetInternalClassId ()
 Internal class Id. More...
 
- Protected Attributes inherited from FBPlug
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 Protected Attributes inherited from FBPlug
static const char * ClassGroupName
 ClassGroupName of the object. More...
 
static int TypeInfo
 TypeInfo. More...
 
static int mGlobalTypeInfo
 Represente the Type Index. More...
 

Detailed Description

Customize motion file loading.

Definition at line 76 of file fbmotionfileoptions.h.

Constructor & Destructor Documentation

◆ FBMotionFileOptions()

FBMotionFileOptions ( FBStringList pStringList,
HIObject  pObject = NULL 
)

Constructor.

Create a FBMotionFileOptions to be used when importing a motion file. Pass file paths to get the appropriate information about those files, modify the options and then call the file import process. Not all options are usable at the same time, some of them are for specific motion type. You can see the valid configuration by looking at the motion file dialog (accessible from File/Motion File Import...).

Parameters
pObjectFor internal use only.
pStringListThe client needs to pass a list of files path to load to collect the motion file information.

Member Function Documentation

◆ GetTakeCount()

int GetTakeCount ( ) const

Return the take count in the file to be loaded.

Warning
You need to use an appropriate constructor with the file path to be able to get the take information.
Returns
Take count

◆ GetTakeName()

const char* GetTakeName ( int  pTakeIndex) const

Get the take name.

Parameters
pTakeIndexIndex of take to get the name.
Returns
Take name

◆ GetTakeSamples()

int GetTakeSamples ( int  pTakeIndex)

Return the number of samples.

Parameters
pTakeIndexIndex of take to get the samples count.
Returns
Number of samples

◆ GetTakeSamplingRate()

double GetTakeSamplingRate ( int  pTakeIndex)

Return the actual sampling rate as a double, useful when you have a custom sampling rate.

Parameters
pTakeIndexIndex of take to get the sampling rate
Returns
Sample rate

◆ GetTakeSamplingRateMode()

FBTimeMode GetTakeSamplingRateMode ( int  pTakeIndex)

Return the sampling rate mode.

Parameters
pTakeIndexIndex of take to get the sampling rate mode
Returns
Sample rate mode
Remarks
Use GetTakeSamplingRate if you have a custom sampling rate to get the actual rate.

◆ GetTakeSelect()

bool GetTakeSelect ( int  pTakeIndex) const

Return true if the take will be loaded.

Parameters
pTakeIndexIndex of take.
Returns
True is the take will be loaded

◆ GetTakeStart()

FBTime GetTakeStart ( int  pTakeIndex)

Return the Take Start time.

Parameters
pTakeIndexIndex of take to get the start time.
Returns
Start time of the take

◆ GetTakeStop()

FBTime GetTakeStop ( int  pTakeIndex)

Return the Take Stop time.

Parameters
pTakeIndexIndex of take to get the stop time.
Returns
Stop time of the take

◆ SetTakeName()

void SetTakeName ( int  pTakeIndex,
const char *  pName 
)

Set the take name.

Parameters
pTakeIndexIndex of take to set.
pNameTake name to set

◆ SetTakeSamples()

void SetTakeSamples ( int  pTakeIndex,
int  pSamplesCount 
)

Set the number of samples for a particular take.

Parameters
pTakeIndexIndex of take to set.
pSamplesCountNumber of samples
Remarks
Must be set to a value bigger than 0 and smaller than the number of samples in the file. The stop time of the motion will be changed based on the new samples count.

◆ SetTakeSamplingRate()

void SetTakeSamplingRate ( int  pTakeIndex,
FBTimeMode  pTimeMode,
double  pCustomSamplingRate = 30.0 
)

Set the sampling rate for a particular take.

Parameters
pTakeIndexIndex of take to set.
pTimeModeTime mode to set.
pCustomSamplingRateCustom sampling rate if pTimeMode is set to kFBTimeModeCustom, unused otherwise (default is 30.0)
Remarks
Changing the sampling rate will change the stop time of the motion.

◆ SetTakeSelect()

void SetTakeSelect ( int  pTakeIndex,
bool  pSelect 
)

Indicate if the take will be loaded.

Parameters
pTakeIndexIndex of take to set.
pSelectSet to true if the take should be loaded.

◆ SetTakeStart()

void SetTakeStart ( int  pTakeIndex,
FBTime  pStartTime 
)

Set the Take Start time.

Parameters
pTakeIndexIndex of take to set.
pStartTimeTime of the first frame of the take
Remarks
Changing the start time of the take will also change the stop time, since the duration is constant. Please change the samples count to change the length of the motion.

◆ SetTakeStop()

void SetTakeStop ( int  pTakeIndex,
FBTime  pStopTime 
)

Set the Take Stop time.

Parameters
pTakeIndexIndex of take to set.
pStopTimeTime of the last frame of the take
Remarks
Changing the stop time of the take will also change the start time, since the duration is constant. Please change the samples count to change the length of the motion.

Member Data Documentation

◆ BaseRotationOnPreRotation

FBPropertyBool BaseRotationOnPreRotation

Read Write Property: If set to true, the base rotation will be imported as Pre Rotation. Used for htr, asf/amc files.

Definition at line 104 of file fbmotionfileoptions.h.

◆ BaseTranslationOnRotationOffset

FBPropertyBool BaseTranslationOnRotationOffset

Read Write Property: If set to true, the base translation will be imported as Rotation Pivot offset. Used for htr, asf/amc

Definition at line 103 of file fbmotionfileoptions.h.

◆ CreateInsteadOfMerge

FBPropertyBool CreateInsteadOfMerge

Read Write Property: If set to true, the motion will imported/models will be created in the scene, if set to false, the motion will be merged.

Definition at line 87 of file fbmotionfileoptions.h.

◆ CreateOpticalSegments

FBPropertyBool CreateOpticalSegments

Read Write Property: If set to true, optical segments will be created. Used for trc, c3d files.

Definition at line 105 of file fbmotionfileoptions.h.

◆ CreateReferenceNode

FBPropertyBool CreateReferenceNode

Settings based on file type.

Read Write Property: If set to true, a reference node will be created. Used for asf/amc, bvh, htr files.

Definition at line 100 of file fbmotionfileoptions.h.

◆ CreateUnmatchedModels

FBPropertyBool CreateUnmatchedModels

Read Write Property: If set to true, nodes will be created to match the hierarchical structure of the imported file.

Definition at line 93 of file fbmotionfileoptions.h.

◆ CreateUnusedOpticalSegments

FBPropertyBool CreateUnusedOpticalSegments

Read Write Property: If set to true, unused optical segments will be created. Used for trc, c3d files.

Definition at line 106 of file fbmotionfileoptions.h.

◆ IgnoreModelType

FBPropertyBool IgnoreModelType

Read Write Property: If set to true, model type will not be considered when finding a matching model in the scene.

Definition at line 92 of file fbmotionfileoptions.h.

◆ ImportDOF

FBPropertyBool ImportDOF

Read Write Property: If set to true, the DOF value will be imported from the file.

Definition at line 95 of file fbmotionfileoptions.h.

◆ ImportScaling

FBPropertyBool ImportScaling

Read Write Property: If set to true, scaling values will be imported.

Definition at line 94 of file fbmotionfileoptions.h.

◆ KeepActorPrefix

FBPropertyBool KeepActorPrefix

Read Write Property: If set to true, the Actor prefix will be kept when naming each optical marker. Used with c3d files.

Definition at line 108 of file fbmotionfileoptions.h.

◆ KeepDummyNode

FBPropertyBool KeepDummyNode

Read Write Property: If set to true, dummy bones from the file are not removed. Used for asf/amc files.

Definition at line 101 of file fbmotionfileoptions.h.

◆ ModelSelection

FBPropertyModelSelection ModelSelection

Common settings when merging, unused with the CreateInsteadOfMerge property is set to true.

Read Write Property: Indicates if we create the models or how we try to match the models from the motion file to those in the scene.

Definition at line 90 of file fbmotionfileoptions.h.

◆ SetLimits

FBPropertyBool SetLimits

Read Write Property: If set to true, use motion limits. Used for asf/amc files.

Definition at line 102 of file fbmotionfileoptions.h.

◆ SetOccludedToLastValidPosition

FBPropertyBool SetOccludedToLastValidPosition

Read Write Property: If set to true, occluded segments will be set to their last valid position. Used for trc, c3d files.

Definition at line 107 of file fbmotionfileoptions.h.

◆ TakeStartEnd

FBPropertyTakeSpanOnLoad TakeStartEnd

Read Write Property: Indicates how the start/end value of the take will be modified.

Definition at line 97 of file fbmotionfileoptions.h.

◆ UpAxisUsedInFile

FBPropertyUpAxis UpAxisUsedInFile

Read Write Property: Indicated the up axis used in the motion file. Only effective when loading c3d files.

Definition at line 109 of file fbmotionfileoptions.h.


The documentation for this class was generated from the following file: