This reference page is linked to from the following overview topics: Deleting a Referenced Object, FBModel - Transformation Data and the Scene Graph, Optical devices, Creating and Characterizing a Skeleton, MotionBuilder 2013, Example: Cube Counter, FBComponent - The Base Entity Class, Modifying the Items in a Referenced Object, Character Marker Set, Understanding the Referenced Objects and Referenced Items, Keyframe Animation on Referenced Items, Overview of the Architecture, Getting Notified of Source File Changes, FBPlug - Object Connection Management, Your First Python Program, Unloading and Reloading a Referenced Object, Restoring a Referenced Object, MotionBuilder 2014.
#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbsdk/fbdata.h>
#include <fbsdk/fbio.h>
#include <fbsdk/fbshader.h>
#include <fbsdk/fbmodel.h>
#include <fbsdk/fbevaluateinfo.h>
#include <fbsdk/fbaudio.h>
#include <fbsdk/fbvideo.h>
#include <fbsdk/fbdeck.h>
#include <fbsdk/fbassetmng.h>
#include <fbsdk/fbmanipulator.h>
Basic system interaction.
The FBSystem file contains the necessary data structure to interface with the underlying system.
Definition in file fbsystem.h.
Classes |
|
class | FBEventVideoFrameRendering |
Event: Video Frame offline Rendering
Event. More... |
|
class | FBSystem |
Provides access to the underlying system,
and the MotionBuilder scene. More... |
|
class | FBTriggerManager |
Trigger engine management. More... |
|
class | FBBatchOptions |
Option parameters for the batch process.
More... |
|
class | FBPlotOptions |
Option parameters for plotting. More... |
|
class | FBAudioRenderOptions |
Audio Render Options structure. More... |
|
class | FBApplication |
FBApplication
is used mainly to manage files. More... |
|
class | FBPlayerControl |
Player control. More... |
|
class | FBEventEvalGlobalCallback |
Event: Global Evaluation pipeline
critical timing callback event. More... |
|
class | FBPropertyEventCallbackEvalPipeline |
PropertyEvent: Callback at evaluation
pipeline (for kFBGlobalEvalCallbackBeforeDAG,
kFBGlobalEvalCallbackAfterDAG and kFBGlobalEvalCallbackAfterDeform)
More... |
|
class | FBPropertyEventCallbackRenderPipeline |
PropertyEvent: Callback at evaluation
pipeline (for kFBGlobalEvalCallbackBeforeRender,
kFBGlobalEvalCallbackBeforeRender) More... |
|
class | FBPropertyEventCallbackSynPoint |
PropertyEvent: Callback at
synchronization point (for kFBGlobalEvalCallbackSyn) More... |
|
class | FBEvaluateManager |
class | FBKeyControl |
Key control. More... |
|
class | FBPointCacheManager |
Point Cache Manager Interface to the point
cache manager. More... |
|
class | FBEventFileChange |
File change event class. More... |
|
class | FBFileMonitoringManager |
File Change Monitoring Interface to the file
change monitoring. More... |
|
class | FBCriticalSection |
High priority critical section class.
More... |
|
class | FBFastLock |
FBFastLock.
More... |
|
class | FBReferenceTime |
Reference time class. More... |
|
class | FBVisitDirectoryCallback |
Loop over directory content. More... |
|
Defines |
|
#define | FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only
once... |
|
Typedefs |
|
typedef void(* | kFBEvaluationGlobalFunctionCallback )(FBEvaluateInfo *pEvaluteInfo) |
typedef void(* | FBTraceStubFct )(unsigned int pLevel, const char *pStr) |
Trace Stub Function type define. |
|
Enumerations |
|
enum | FBBatchProcessType { kFBBatchProcessTypeLoad, kFBBatchProcessTypeSave, kFBBatchProcessTypeConvert } |
Different process type for the batch.
More... |
|
enum | FBBatchFileFormat
{ kFBBatchFileFormatTRC, kFBBatchFileFormatC3D, kFBBatchFileFormatAMC, kFBBatchFileFormatBVH, kFBBatchFileFormatHTR, kFBBatchFileFormatFBX } |
Different file formats for the batch.
More... |
|
enum | FBBatchOnTakeExist { kFBBatchOnTakeExistOverwrite, kFBBatchOnTakeExistSkip } |
Different actions to perform when a take
already exist while in a batch process. More... |
|
enum | FBBatchOnContainsBatchTakes { kFBBatchOnContainsBatchTakesSaveBatchTakesOnly, kFBBatchOnContainsBatchTakesSaveAllTakes } |
Different actions to perform when a scene
already contains batch takes while in a batch process. More... |
|
enum | FBBatchStatus
{ kFBBatchStatusSuccess, kFBBatchStatusError, kFBBatchStatusCharacterNotSpecified, kFBBatchStatusCharacterNotCharacterized, kFBBatchStatusCharacterHasNoReference, kFBBatchStatusInputActorNotSpecified, kFBBatchStatusActorInputMarkersetNotSpecified, kFBBatchStatusActorInputMarkersetHasNoReferenceModel, kFBBatchStatusActorInputMarkersetNotCorrectlyAssociated, kFBBatchStatusInputCharacterNotCharacterized, kFBBatchStatusInputCharacterHasNoReference, kFBBatchStatusInputDirectoryNotValid, kFBBatchStatusAsfSkeletonFileNotSpecified, kFBBatchStatusCantOpenAsfSkeletonFile, kFBBatchStatusOutputDirectoryNotValid } |
Different return values of the Batch
process. More... |
|
enum | FBRotationFilter { kFBRotationFilterNone, kFBRotationFilterGimbleKiller, kFBRotationFilterUnroll } |
Rotation filters. More... |
|
enum | FBViewerMode
{ kFBViewerModeOneWindow, kFBViewerModeTwoWindow, kFBViewerModeThreeWindow, kFBViewerModeFourWindow, kFBViewerModeSchematic } |
Different viewer modes for the 3D viewer.
More... |
|
enum | FBOneClickApplication { kFBOneClickNone, kFBOneClickMaya, kFBOneClick3dsMax } |
Possible application for One-Click interop
with MotionBuilder. More... |
|
enum | FBTransportMode
{ kFBTransportPlay, kFBTransportPlayPrepare, kFBTransportPlayReady, kFBTransportStop, kFBTransportStopPost, kFBTransportStopReady, kFBTransportShuttle, kFBTransportShuttlePrepare, kFBTransportShuttleReady, kFBTransportPlayReverse, kFBTransportPlayReversePrepare, kFBTransportPlayReverseReady, kFBTransportJog, kFBTransportJogPrepare, kFBTransportJogReady, kFBTransportGoto, kFBTransportGotoPrepare, kFBTransportGotoReady, kFBTransportStepForward, kFBTransportStepForwardPrepare, kFBTransportStepForwardReady, kFBTransportStepBackward, kFBTransportStepBackwardPrepare, kFBTransportStepBackwardReady } |
Transport modes. More... |
|
enum | FBTransportTimeFormat { kFBTimeFormatTimecode, kFBTimeFormatFrame } |
Available transport control time display.
More... |
|
enum | FBTransportPlaySpeed
{ kFBSpeed_1_10x, kFBSpeed_1_5x, kFBSpeed_1_4x, kFBSpeed_1_3x, kFBSpeed_1_2x, kFBSpeed_1x, kFBSpeed_ALL_FR, kFBSpeed_2x, kFBSpeed_3x, kFBSpeed_4x, kFBSpeed_5x, kFBSpeed_10x } |
Available transport control play speed.
More... |
|
enum | FBTransportSnapMode { kFBTransportSnapModeNoSnap, kFBTransportSnapModeSnapOnFrames, kFBTransportSnapModePlayOnFrames, kFBTransportSnapModeSnapAndPlayOnFrames } |
Available snap methods for the transport
control. More... |
|
enum | FBParallelScheduleType { kFBParallelScheduleSerial, kFBParallelScheduleSimple, kFBParallelScheduleAdvanced } |
DEPRICATED use ParallelEvaluation on
FBEvaluateManager
insteadAvailable DAG parallel schedule algorithm More... |
|
enum | FBGlobalEvalCallbackTiming
{ kFBGlobalEvalCallbackBeforeDAG, kFBGlobalEvalCallbackAfterDAG, kFBGlobalEvalCallbackAfterDeform, kFBGlobalEvalCallbackSyn, kFBGlobalEvalCallbackBeforeRender, kFBGlobalEvalCallbackAfterRender } |
Global Evaluation callback timing. More... |
|
enum | FBFileMonitoringType { kFBFileMonitoring_InvalidIndex, kFBFileMonitoring_MAINSCENE, kFBFileMonitoring_ANIMATIONCLIP, kFBFileMonitoring_FILEREFERENCE } |
File Monitoring Type. More... |
|
enum | FBTraceLevel { kFBNO_TRACE = 0, kFBCRITICAL_TRACE = 1, kFBNORMAL_TRACE = 10, kFBALL_TRACE = 20 } |
Trace Level. More... |
|
Functions |
|
FB_FORWARD (FBCharacter) | |
FB_DEFINE_COMPONENT (K_DLLIMPORT, Take) | |
FB_DEFINE_COMPONENT (K_DLLIMPORT, Renderer) | |
K_DLLIMPORT HIObject | FBGetFBObject (HIObject pObject, bool pAutoCreate=false) |
Get the SDK object from an Internal Object.
|
|
template<class T > | |
T * | FBCast (HIObject pObject, bool pAutoCreate=false) |
Cast the SDK object using it's IObject interface into the proper
class. |
|
template<class T > | |
T * | FBCast (FBObject *pObject, bool pAutoCreate=false) |
Cast the SDK object using it's IObject interface into the proper
class. |
|
__FB_FORWARD (FBSystem) | |
__FB_FORWARD (FBTriggerManager) | |
FB_FORWARD (FBBatchOptions) | |
FB_DEFINE_ENUM (K_DLLIMPORT, BatchProcessType) | |
FB_DEFINE_ENUM (K_DLLIMPORT, BatchFileFormat) | |
FB_DEFINE_ENUM (K_DLLIMPORT, BatchOnTakeExist) | |
FB_DEFINE_ENUM (K_DLLIMPORT, BatchOnContainsBatchTakes) | |
FB_FORWARD (FBPlotOptions) | |
FB_DEFINE_ENUM (K_DLLIMPORT, RotationFilter) | |
FB_FORWARD (FBAudioRenderOptions) | |
__FB_FORWARD (FBApplication) | |
__FB_FORWARD (FBCharacter) | |
__FB_FORWARD (FBActor) | |
FB_DEFINE_COMPONENT (K_DLLIMPORT, Character) | |
FB_DEFINE_COMPONENT (K_DLLIMPORT, Actor) | |
__FB_FORWARD (FBPlayerControl) | |
FB_DEFINE_ENUM (K_DLLIMPORT, TransportMode) | |
FB_DEFINE_ENUM (K_DLLIMPORT, TransportTimeFormat) | |
FB_DEFINE_ENUM (K_DLLIMPORT, TransportPlaySpeed) | |
FB_DEFINE_ENUM (K_DLLIMPORT, TransportSnapMode) | |
FB_DEFINE_ENUM (K_DLLIMPORT, ParallelScheduleType) | |
__FB_FORWARD (FBEvaluateManager) | |
Evaluate Manager. |
|
__FB_FORWARD (FBKeyControl) | |
__FB_FORWARD (FBPointCacheManager) | |
__FB_FORWARD (FBFileMonitoringManager) | |
FB_DEFINE_ENUM (K_DLLIMPORT, FileMonitoringType) | |
__FB_FORWARD (FBEventFileChange) | |
FB_FORWARD (FBCriticalSection) | |
FB_FORWARD (FBFastLock) | |
__FB_FORWARD (FBReferenceTime) | |
K_DLLIMPORT FBModelList * | FBCreateModelList () |
Create a FBModelList object. |
|
K_DLLIMPORT void | FBDestroyModelList (FBModelList *pModelList) |
Delete a FBModelList object. |
|
K_DLLIMPORT FBPlugList * | FBCreatePlugList () |
Create a FBPlugList object. |
|
K_DLLIMPORT void | FBDestroyPlugList (FBPlugList *pPlugList) |
Delete a FBPlugList object. |
|
K_DLLIMPORT FBComponentList * | FBCreateComponentList () |
Create a FBObjectList object. |
|
K_DLLIMPORT void | FBDestroyComponentList (FBComponentList *pObjectList) |
Delete a FBObjectList object. |
|
K_DLLIMPORT void | FBSleep (kULong MilliSeconds) |
Sleep function Puts system to sleep for
specified time. |
|
K_DLLIMPORT void | FBSchedulingDependencyOutput (bool pEnable) |
Debug function for MT dependency debug.
|
|
K_DLLIMPORT FBModel * | FBFindModelByLabelName (const char *pModelLabelName) |
Find a model in the scene by its label name.
|
|
K_DLLIMPORT FBModel * | FBFindModelByUniqueColorId (const FBColor &pColor, int *pSubItemIndex=NULL) |
Find a model in the scene by its unique
color id. |
|
K_DLLIMPORT FBModel * | FBLoadFbxPrimitivesModel (const char *pModelName) |
Load a model. |
|
K_DLLIMPORT void | FBFindModelsOfType (FBModelList &pList, int pTypeInfo, FBModel *pParent=NULL) |
Find all models of a certain type in the
scene. |
|
K_DLLIMPORT void | FBGetSelectedModels (FBModelList &pList, FBModel *pParent=NULL, bool pSelected=true, bool pSortBySelectOrder=false) |
Find all models that are selected (if
pSelected is true) Searches recursively from a root
model for models that are selected, and adds them to a list of
models. |
|
K_DLLIMPORT void | FBFindObjectsByName (const char *pNamePattern, FBComponentList &pList, bool pIncludeNamespace=true, bool pModelsOnly=false) |
FBFindObjectsByName. |
|
K_DLLIMPORT FBComponent * | FBFindObjectByFullName (const char *pObjectFullName) |
FBFindObjectByFullName. |
|
K_DLLIMPORT int | FBDeleteObjectsByName (const char *pNamePattern, const char *pNameSpace=NULL, const char *pGroupName=NULL) |
FBDeleteObjectsByName. |
|
K_DLLIMPORT void | FBBeginChangeAllModels () |
Call begin change to all models (need to be
closed). |
|
K_DLLIMPORT void | FBEndChangeAllModels () |
Call end change to all models (should be
first open). |
|
K_DLLIMPORT void | FBMergeTransactionBegin () |
Call to begin the transaction for merging
multiple files. |
|
K_DLLIMPORT void | FBMergeTransactionEnd () |
Call to end the merge transaction. |
|
K_DLLIMPORT bool | FBMergeTransactionIsOn () |
Call to tell if system is during Merge
transaction. |
|
K_DLLIMPORT void | FBMergeTransactionFileRefEditBegin () |
Call to begin the transaction for merging
multiple files and applying File Reference edit at the same time.
|
|
K_DLLIMPORT void | FBMergeTransactionFileRefEditEnd () |
Call to end merge transaction with File
Reference edit. |
|
K_DLLIMPORT bool | FBMergeTransactionFileRefEditIsOn () |
Call to tell if system is during File
Reference Edit Merge transaction. |
|
K_DLLIMPORT void | FBTraceSetLevel (unsigned int pNewLevel) |
Set Global Trace Detailed Level which
affects all the output targets. |
|
K_DLLIMPORT unsigned int | FBTraceGetLevel () |
Get Global Trace Detailed Level which
affects all the output targets. |
|
K_DLLIMPORT void | FBTrace (const char *pFormatString,...) |
This function prints useful debugging
strings in the console with kFBNORMAL_TRACE output detailed level.
|
|
K_DLLIMPORT void | FBTraceWithLevel (unsigned int pLevel, const char *pFormatString,...) |
This function prints useful debugging
strings in the console. |
|
K_DLLIMPORT bool | FBRegisterTraceStubFct (FBTraceStubFct pFct) |
Register custom trace stub function.
|
|
K_DLLIMPORT bool | FBUnRegisterTraceStubFct (FBTraceStubFct pFct) |
Unregister custom trace stub function.
|
|
K_DLLIMPORT void | FBObjectLifeLogEnable (bool pEnable) |
Enable object creation / deletion logging.
|
|
K_DLLIMPORT unsigned int | FBObjectGetGlobalUniqueId () |
Get the global static object unique ID
counter. |
|
K_DLLIMPORT void | FBObjectPrintLivings (unsigned int pStartUniqueId) |
Print those living objects created when
logging is enabled. |
|
K_DLLIMPORT unsigned int | FBObjectGetLivingCount () |
Get current total living object count.
|
|
K_DLLIMPORT void | FBMakeFullPath (FBString &pFullPath, const char *pRootPath, const char *pFilePath) |
Get the given file's full path. |
|
K_DLLIMPORT bool | FBPopNormalTool (const char *pToolName, bool pSetFocus=true) |
This function is used to bring up a specific
tool in the GUI. |
#define FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only once...
Definition at line 50 of file fbsystem.h.
typedef void(* kFBEvaluationGlobalFunctionCallback)(FBEvaluateInfo *pEvaluteInfo) |
Definition at line 1092 of file fbsystem.h.
enum FBBatchProcessType |
Different process type for the batch.
kFBBatchProcessTypeLoad |
Load the files and plot the character with every take. |
kFBBatchProcessTypeSave |
Save the takes in different files. |
kFBBatchProcessTypeConvert |
Does the load and save. |
Definition at line 370 of file fbsystem.h.
enum FBBatchFileFormat |
Different file formats for the batch.
Definition at line 379 of file fbsystem.h.
enum FBBatchOnTakeExist |
Different actions to perform when a take already exist while in a batch process.
Definition at line 391 of file fbsystem.h.
Different actions to perform when a scene already contains batch takes while in a batch process.
kFBBatchOnContainsBatchTakesSaveBatchTakesOnly |
Save only the batch takes. |
kFBBatchOnContainsBatchTakesSaveAllTakes |
Save all the takes. |
Definition at line 399 of file fbsystem.h.
enum FBBatchStatus |
Different return values of the Batch process.
Definition at line 407 of file fbsystem.h.
{ kFBBatchStatusSuccess, kFBBatchStatusError, kFBBatchStatusCharacterNotSpecified, kFBBatchStatusCharacterNotCharacterized, kFBBatchStatusCharacterHasNoReference, kFBBatchStatusInputActorNotSpecified, kFBBatchStatusActorInputMarkersetNotSpecified, kFBBatchStatusActorInputMarkersetHasNoReferenceModel, kFBBatchStatusActorInputMarkersetNotCorrectlyAssociated, kFBBatchStatusInputCharacterNotCharacterized, kFBBatchStatusInputCharacterHasNoReference, kFBBatchStatusInputDirectoryNotValid, kFBBatchStatusAsfSkeletonFileNotSpecified, kFBBatchStatusCantOpenAsfSkeletonFile, kFBBatchStatusOutputDirectoryNotValid };
enum FBRotationFilter |
Rotation filters.
Definition at line 471 of file fbsystem.h.
enum FBViewerMode |
Different viewer modes for the 3D viewer.
kFBViewerModeOneWindow |
View one pane. |
kFBViewerModeTwoWindow |
View two panes. |
kFBViewerModeThreeWindow |
View three panes. |
kFBViewerModeFourWindow |
View four panes. |
kFBViewerModeSchematic |
Schematic view. |
Definition at line 542 of file fbsystem.h.
Possible application for One-Click interop with MotionBuilder.
Definition at line 552 of file fbsystem.h.
enum FBTransportMode |
Transport modes.
Definition at line 850 of file fbsystem.h.
{ kFBTransportPlay, kFBTransportPlayPrepare, kFBTransportPlayReady, kFBTransportStop, kFBTransportStopPost, kFBTransportStopReady, kFBTransportShuttle, kFBTransportShuttlePrepare, kFBTransportShuttleReady, kFBTransportPlayReverse, kFBTransportPlayReversePrepare, kFBTransportPlayReverseReady, kFBTransportJog, kFBTransportJogPrepare, kFBTransportJogReady, kFBTransportGoto, kFBTransportGotoPrepare, kFBTransportGotoReady, kFBTransportStepForward, kFBTransportStepForwardPrepare, kFBTransportStepForwardReady, kFBTransportStepBackward, kFBTransportStepBackwardPrepare,kFBTransportStepBackwardReady };
Available transport control time display.
kFBTimeFormatTimecode |
Timecode time display mode. |
kFBTimeFormatFrame |
Frame time display mode. |
Definition at line 863 of file fbsystem.h.
enum FBTransportPlaySpeed |
Available transport control play speed.
Definition at line 873 of file fbsystem.h.
enum FBTransportSnapMode |
Available snap methods for the transport control.
Definition at line 891 of file fbsystem.h.
DEPRICATED use ParallelEvaluation on FBEvaluateManager insteadAvailable DAG parallel schedule algorithm
Definition at line 1070 of file fbsystem.h.
Global Evaluation callback timing.
Let the user to register callback function at different stage of background evaluation.
Definition at line 1082 of file fbsystem.h.
enum FBFileMonitoringType |
File Monitoring Type.
Definition at line 1275 of file fbsystem.h.
FB_FORWARD | ( | FBCharacter | ) |
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Take | |||
) |
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Renderer | |||
) |
K_DLLIMPORT HIObject FBGetFBObject | ( | HIObject | pObject, |
bool | pAutoCreate =
false |
||
) |
Get the SDK object from an Internal Object.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
.T* FBCast | ( | HIObject | pObject, |
bool | pAutoCreate =
false |
||
) | [inline] |
Cast the SDK object using it's IObject interface into the proper class.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
.Definition at line 113 of file fbsystem.h.
{ HIObject lObject = FBGetFBObject(pObject, pAutoCreate); // Should also validate type but not available for now return (T*)lObject; }
T* FBCast | ( | FBObject * | pObject, |
bool | pAutoCreate =
false |
||
) | [inline] |
Cast the SDK object using it's IObject interface into the proper class.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
.Definition at line 125 of file fbsystem.h.
{ HIObject lObject = pObject ? FBGetFBObject(pObject->GetHIObject(), pAutoCreate) : NULL; // Should also validate type but not available for now return (T*)lObject; }
__FB_FORWARD | ( | FBSystem | ) |
__FB_FORWARD | ( | FBTriggerManager | ) |
FB_FORWARD | ( | FBBatchOptions | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
BatchProcessType | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
BatchFileFormat | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
BatchOnTakeExist | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
BatchOnContainsBatchTakes | |||
) |
FB_FORWARD | ( | FBPlotOptions | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
RotationFilter | |||
) |
FB_FORWARD | ( | FBAudioRenderOptions | ) |
__FB_FORWARD | ( | FBApplication | ) |
__FB_FORWARD | ( | FBCharacter | ) |
__FB_FORWARD | ( | FBActor | ) |
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Character | |||
) |
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Actor | |||
) |
__FB_FORWARD | ( | FBPlayerControl | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
TransportMode | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
TransportTimeFormat | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
TransportPlaySpeed | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
TransportSnapMode | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
ParallelScheduleType | |||
) |
__FB_FORWARD | ( | FBEvaluateManager | ) |
Evaluate Manager.
Interface to schedule the DAG (Directed Acyclic Graph) tasks to multi-core/CPU (or GPU) to accelerate evaluate process. Provide callback on some critical paths / times to allow customize the application.
__FB_FORWARD | ( | FBKeyControl | ) |
__FB_FORWARD | ( | FBPointCacheManager | ) |
__FB_FORWARD | ( | FBFileMonitoringManager | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
FileMonitoringType | |||
) |
__FB_FORWARD | ( | FBEventFileChange | ) |
FB_FORWARD | ( | FBCriticalSection | ) |
FB_FORWARD | ( | FBFastLock | ) |
__FB_FORWARD | ( | FBReferenceTime | ) |
K_DLLIMPORT FBModelList* FBCreateModelList | ( | ) |
Create a FBModelList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateModelList/FBDestroyModelList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
K_DLLIMPORT void FBDestroyModelList | ( | FBModelList * | pModelList | ) |
Delete a FBModelList object.
pModelList | pointer to the object created with a call to FBCreateModelList(). |
K_DLLIMPORT FBPlugList* FBCreatePlugList | ( | ) |
Create a FBPlugList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateObjectList/FBDestroyObjectList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
K_DLLIMPORT void FBDestroyPlugList | ( | FBPlugList * | pPlugList | ) |
Delete a FBPlugList object.
pPlugList | pointer to the object created with a call to FBCreatePlugList(). |
K_DLLIMPORT FBComponentList* FBCreateComponentList | ( | ) |
Create a FBObjectList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateObjectList/FBDestroyObjectList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
K_DLLIMPORT void FBDestroyComponentList | ( | FBComponentList * | pObjectList | ) |
Delete a FBObjectList object.
pObjectList | pointer to the object created with a call to FBCreateObjectList(). |
K_DLLIMPORT void FBSleep | ( | kULong | MilliSeconds | ) |
Sleep function Puts system to sleep for specified time.
MilliSeconds | Time to sleep for. |
K_DLLIMPORT void FBSchedulingDependencyOutput | ( | bool | pEnable | ) |
Debug function for MT dependency debug.
When enabled log file will be created and updated each time MultiThreaded scheduling is happening (scene rebuild)
pEnable | ON/OFF switch. This is not stored in config (should be changed only for debug purpose, because slow down rebuild process ) |
K_DLLIMPORT FBModel* FBFindModelByLabelName | ( | const char * | pModelLabelName | ) |
Find a model in the scene by its label name.
Searches the scene for a model, based on the model's label name. Label name is "NameSpaceName:ObjectName". also known as "PrefixName::ObjectName" Full name is "GroupName::NameSpaceName:ObjectName".
pModelLabelName | LabelName of model to search for. Specify it with schema like "NameSpaceName:ObjectName",or "ObjectName" if no NameSpaceName. |
K_DLLIMPORT FBModel* FBFindModelByUniqueColorId | ( | const FBColor & | pColor, |
int * | pSubItemIndex =
NULL |
||
) |
Find a model in the scene by its unique color id.
A model could have a single unique ColorID, but SDK plugin user could request additional ColorID per model to support multi sub items picking. see FBModel::SetAdditionalUniqueColorIDCount().
pColor | Color channel values are in range of [0,1] with precision 1.0/255 |
pSubItemIndex | Pass out SubImtem index value if not null. In pyfbsdk no such parameter. |
K_DLLIMPORT FBModel* FBLoadFbxPrimitivesModel | ( | const char * | pModelName | ) |
Load a model.
pModelName | Name of primitive model to load. |
K_DLLIMPORT void FBFindModelsOfType | ( | FBModelList & | pList, |
int | pTypeInfo, | ||
FBModel * | pParent =
NULL |
||
) |
Find all models of a certain type in the scene.
Searches recursively from a root model for models of a certain type, and adds them to a list of models.
pList | List to add found models to. |
pTypeInfo | Model type to look for. |
pParent | Root model to look from (default=NULL(root)). |
K_DLLIMPORT void FBGetSelectedModels | ( | FBModelList & | pList, |
FBModel * | pParent = NULL , |
||
bool | pSelected = true , |
||
bool | pSortBySelectOrder =
false |
||
) |
Find all models that are selected (if pSelected
is
true) Searches recursively from a root model for models that are
selected, and adds them to a list of models.
pList | List to add found models to. |
pParent | Root model to look from (default=NULL(root)). |
pSelected | true to find selected models, false to find unselected models(default=true). |
pSortBySelectOrder | true to sort the result by selection order, first selected model in the first part of the list; false to sort the result by scene graph order |
K_DLLIMPORT void FBFindObjectsByName | ( | const char * | pNamePattern, |
FBComponentList & | pList, | ||
bool | pIncludeNamespace =
true , |
||
bool | pModelsOnly =
false |
||
) |
FBFindObjectsByName.
This function will query the system for objects fulfilling a particular name pattern
pNamePattern | Indicate the name pattern to search. This pattern can contain any amount of *. (ex: *tr*mod*scene ) |
pList | List that contains the objects |
pIncludeNamespace | Does the search use the complete name (with namespace) |
pModelsOnly | Is the search on models or all types of objects |
K_DLLIMPORT FBComponent* FBFindObjectByFullName | ( | const char * | pObjectFullName | ) |
FBFindObjectByFullName.
This function will query the system for an object with its FullName matching. Full name is "GroupName::NameSpaceName:ObjectName". Label name is "NameSpaceName:ObjectName". also known as "PrefixName::ObjectName"
pObjectFullName | Full Name of object to search for. Specify it with schema like "GroupName::NameSpaceName:ObjectName",or "GroupName::ObjectName" if no NameSpaceName. |
K_DLLIMPORT int FBDeleteObjectsByName | ( | const char * | pNamePattern, |
const char * | pNameSpace = NULL , |
||
const char * | pGroupName =
NULL |
||
) |
FBDeleteObjectsByName.
This function will query the system for objects fulfilling a particular name pattern and delete them. specify a namespace preferred, delete all objects with the group name without specified a namespace specified may lead to inconsistent in scene. Wrap multiple calls to FBDeleteObjectsByName() inside pair of FBMergeTransactionBegin() / FBMergeTransactionEnd() could improve application's performance.
pNamePattern | if not NULL, indicate the name pattern to search. This pattern can contain any amount of *. (ex: *tr*mod*scene ). if is NULL or Empty string, * will be used for match all. |
pNameSpace | if not NULL, the objects must be inside the given namespace. |
pGroupName | if not NULL, indicate the object group name (type). |
K_DLLIMPORT void FBBeginChangeAllModels | ( | ) |
Call begin change to all models (need to be closed).
Useful for selection of many models that can trigger many related callbacks)
K_DLLIMPORT void FBEndChangeAllModels | ( | ) |
Call end change to all models (should be first open).
K_DLLIMPORT void FBMakeFullPath | ( | FBString & | pFullPath, |
const char * | pRootPath, | ||
const char * | pFilePath | ||
) |
Get the given file's full path.
pFullPath | If the given file path is not root path, return the new path with the given file path behind the given root path, if the given path is root path, directly return the given path. |
pRootPath | The given root path. |
pFilePath | The given file path. |
K_DLLIMPORT bool FBPopNormalTool | ( | const char * | pToolName, |
bool | pSetFocus =
true |
||
) |
This function is used to bring up a specific tool in the GUI.
pToolName | The name of the tool as shown in the Open Reality menu. |
pSetFocus | Indicate if the tool will have the focus. |