Open Reality Reference Guide
 
Loading...
Searching...
No Matches
fbsystem.h File Reference

Basic system interaction. More...

#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/fbconstructionhistory.h>
#include <fbsdk/fbaudio.h>
#include <fbsdk/fbvideo.h>
#include <fbsdk/fbdeck.h>
#include <fbsdk/fbassetmng.h>
#include <fbsdk/fbmanipulator.h>

Go to the source code of this file.

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  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  FBVisitDirectoryCallback
 Loop over directory content. More...
 
class  FBDirMap
 

Macros

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once...
 

Typedefs

typedef void(* FBTraceStubFct) (unsigned int pLevel, const char *pStr)
 Trace Stub Function type define.
 

Enumerations

enum  FBNewKeyInterpolationType {
  kFBNewKeyInterpolation_None = -1 ,
  kFBNewKeyInterpolation_Auto ,
  kFBNewKeyInterpolation_Spline ,
  kFBNewKeyInterpolation_SplineClamp ,
  kFBNewKeyInterpolation_Linear ,
  kFBNewKeyInterpolation_Step ,
  kFBNewKeyInterpolation_TCB ,
  kFBNewKeyInterpolation_Smooth ,
  kFBNewKeyInterpolation_SmoothClamp ,
  kFBNewKeyInterpolation_Fixed ,
  kFBNewKeyInterpolation_Custom0 ,
  kFBNewKeyInterpolation_Custom1 ,
  kFBNewKeyInterpolation_Custom2
}
 Key Interpolation Type to use when creating new keys. More...
 
enum  FBFileMonitoringType {
  kFBFileMonitoring_InvalidIndex ,
  kFBFileMonitoring_MAINSCENE ,
  kFBFileMonitoring_ANIMATIONCLIP ,
  kFBFileMonitoring_FILEREFERENCE ,
  kFBFileMonitoring_PYTHONEDITORSCRIPT
}
 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)
 
 __FB_FORWARD (FBSystem)
 
 __FB_FORWARD (FBTriggerManager)
 
 __FB_FORWARD (FBKeyControl)
 
 FB_DEFINE_ENUM (K_DLLIMPORT, NewKeyInterpolationType)
 
 __FB_FORWARD (FBPointCacheManager)
 
 __FB_FORWARD (FBFileMonitoringManager)
 
 FB_DEFINE_ENUM (K_DLLIMPORT, FileMonitoringType)
 
 __FB_FORWARD (FBEventFileChange)
 
 FB_FORWARD (FBCriticalSection)
 
 FB_FORWARD (FBFastLock)
 
K_DLLIMPORT void FBSleep (kULong MilliSeconds)
 Sleep function Puts system to sleep for specified time.
 
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)
 FBeval.
 
 FB_FORWARD (FBDirMap)
 FBDirMap: Allows to map a directory to another directory.
 

Detailed Description

Basic system interaction.

The FBSystem file contains the necessary data structure to interface with the underlying system.

Definition in file fbsystem.h.

Macro Definition Documentation

◆ FBSDK_DLL

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 50 of file fbsystem.h.

Enumeration Type Documentation

◆ FBFileMonitoringType

File Monitoring Type.

Enumerator
kFBFileMonitoring_InvalidIndex 

Invalid value.

kFBFileMonitoring_MAINSCENE 

Main Scene change monitoring.

kFBFileMonitoring_ANIMATIONCLIP 

Animation clip change monitoring.

kFBFileMonitoring_FILEREFERENCE 

File Reference change monitoring.

kFBFileMonitoring_PYTHONEDITORSCRIPT 

Python Editor Script change monitoring.

Definition at line 482 of file fbsystem.h.

◆ FBNewKeyInterpolationType

Key Interpolation Type to use when creating new keys.

Enumerator
kFBNewKeyInterpolation_None 

Invalid interpolation type, could be returned by the system if it is in an uninitialized state. Don't use this mode.

kFBNewKeyInterpolation_Auto 

Auto interpolation type.

kFBNewKeyInterpolation_Spline 

Spline interpolation type.

kFBNewKeyInterpolation_SplineClamp 

Spline Clamp interpolation type.

kFBNewKeyInterpolation_Linear 

Linear interpolation type.

kFBNewKeyInterpolation_Step 

Step interpolation type.

kFBNewKeyInterpolation_TCB 

TCB interpolation type.

kFBNewKeyInterpolation_Smooth 

Smooth interpolation type.

kFBNewKeyInterpolation_SmoothClamp 

Smooth Clamp interpolation type.

kFBNewKeyInterpolation_Fixed 

Fixed interpolation type.

kFBNewKeyInterpolation_Custom0 

Custom 0 interpolation type.

kFBNewKeyInterpolation_Custom1 

Custom 1 interpolation type.

kFBNewKeyInterpolation_Custom2 

Custom 2 interpolation type.

Definition at line 383 of file fbsystem.h.

Function Documentation

◆ FB_FORWARD()

FB_FORWARD ( FBDirMap  )

FBDirMap: Allows to map a directory to another directory.

For example, one could map all the files located in the Widows folder "o:\MyScenes\" to the Linux folder "/usr/data/Scenes/" by calling: FBDirMap::Add("o:\MyScenes","/usr/data/Scenes")

Directories will remained mapped until the end of the application, or until the Clear method is called. The mapping is case-sensitive on all platforms.

Environment variables tokens can be specified using the format. Environment variables are expanded at the time paths are added to the map.

◆ FBMakeFullPath()

K_DLLIMPORT void FBMakeFullPath ( FBString pFullPath,
const char *  pRootPath,
const char *  pFilePath 
)

FBeval.

Get the given file's full path.

Return values
pFullPathIf 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.
Parameters
pRootPathThe given root path.
pFilePathThe given file path.

◆ FBSleep()

K_DLLIMPORT void FBSleep ( kULong  MilliSeconds)

Sleep function Puts system to sleep for specified time.

Parameters
MilliSecondsTime to sleep for.