FBSystem Class Reference

#include <mobu-python-api.h>

Class Description

Provides access to the underlying system, and the MotionBuilder scene.

Use this class to access system properties such as the computer name, the system time, and the MotionBuilder application version. It is also used to get access to the scene (FBScene) and the current take (FBTake), as in the following Python snippet:

myScene = FBSystem().Scene
for take in myScene.Takes:
print take.Name

The Python sample FBSystemEvents.py shows how to register a callback to FBSystem.

+ Inheritance diagram for FBSystem:

Public Member Functions

 __reduce__ ()
 
FBStringList GetLoadedPluginItemGroups (FBSystem arg1, str arg2)
 Returns a string list containing the groups list in which the specified plug-in item's name belongs to. More...
 
FBStringList GetLoadedPluginItemInfo (FBSystem arg1, str arg2)
 Returns a string list containing the information of the specified plug-in item's name. More...
 
FBStringList GetLoadedPluginItemsName (FBSystem arg1)
 Returns a string list containing the names of all the loaded plug-in. More...
 
FBStringList GetPluginPath (FBSystem arg1)
 Returns the plugin path. More...
 
FBStringList GetPythonStartupPath (FBSystem arg1)
 Returns the python startup path. More...
 
FBStringList GetCommandLineArgs (FBSystem arg1)
 Returns the command line arguments for SDK. More...
 
 __init__ (object arg1)
 Constructor. More...
 
str CurrentDirectory (FBSystem arg1)
 Get current work directory. More...
 
str MakeFullPath (FBSystem arg1, str arg2)
 Return the full path. More...
 
- Public Member Functions inherited from FBComponent
 __reduce__ ()
 
FBPropertyList PropertyGetModifiedList (FBComponent arg1, FBPlugModificationFlag arg2)
 Get list of properties which have been modified since last loading. More...
 
str ClassName (FBComponent arg1)
 Get the class name. More...
 
 DisableObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Disable a specific Object Flags. More...
 
 EnableObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Enable a specific Object Flags. More...
 
bool FBCreate (FBComponent arg1)
 Open Reality Creation function. More...
 
 FBDelete (FBComponent arg1)
 Open Reality deletion function. More...
 
 FBDestroy (FBComponent arg1)
 Open Reality destruction function. More...
 
FBObjectFlag GetObjectFlags (FBComponent arg1)
 Get all Object Flags (concatenated). More...
 
bool GetObjectStatus (FBComponent arg1, FBObjectStatus arg2)
 Check to see if an object status is enabled. More...
 
bool HasObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Check whether a specific object flag is enabled. More...
 
bool Is (FBComponent arg1, object arg2)
 Returns true if object is of type TypeId. More...
 
bool ProcessNamespaceHierarchy (FBComponent arg1, FBNamespaceAction arg2, str arg3, str arg4, object arg5)
 ProcessNamespaceHierarchy. More...
 
bool ProcessObjectNamespace (FBComponent arg1, FBNamespaceAction arg2, str arg3, str arg4, object arg5)
 ProcessObjectNamespace. More...
 
int PropertyAdd (FBComponent arg1, FBProperty arg2)
 Add a property to the component's property manager. More...
 
bool PropertyAddReferenceProperty (FBComponent arg1, FBProperty arg2)
 Add a reference property to the component's property manager. More...
 
object PropertyCreate (FBComponent arg1, str arg2, FBPropertyType arg3, str arg4, object arg5, object arg6, FBProperty arg7)
 Create user or dynamic property. More...
 
 PropertyRemove (FBComponent arg1, FBProperty arg2)
 Remove a Property from the component's Property manager. More...
 
 SetObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 SetObjectFlags. More...
 
 SetObjectStatus (FBComponent arg1, FBObjectStatus arg2, object arg3)
 Enable/Disable a specific Object Status. More...
 
 HardSelect (FBComponent arg1)
 HardSelect. More...
 
object GetOwnerFileReference (FBComponent arg1)
 Get the owner FileReference object. More...
 
 __init__ (...)
 Constructor. More...
 
- Public Member Functions inherited from FBPlug
 __reduce__ ()
 
bool BeginChange (FBPlug arg1)
 Begins a change on multiple plugs. More...
 
str ClassName (FBPlug arg1)
 internal System vars. More...
 
bool ConnectDst (FBPlug arg1, FBPlug arg2, FBConnectionType arg3)
 Add a destination connection. More...
 
bool ConnectDstAt (FBPlug arg1, object arg2, FBPlug arg3, FBConnectionType arg4)
 Add a destination connection. More...
 
bool ConnectSrc (FBPlug arg1, FBPlug arg2, FBConnectionType arg3)
 Add a source connection. More...
 
bool ConnectSrcAt (FBPlug arg1, object arg2, FBPlug arg3, FBConnectionType arg4)
 Add a source connection. More...
 
 DisconnectAllDst (FBPlug arg1)
 Remove all destination connections. More...
 
 DisconnectAllSrc (FBPlug arg1)
 Remove all source connections. More...
 
bool DisconnectDst (FBPlug arg1, FBPlug arg2)
 Remove a destination connection. More...
 
bool DisconnectDstAt (FBPlug arg1, object arg2)
 Remove a destination connection at a specified index. More...
 
bool DisconnectSrc (FBPlug arg1, FBPlug arg2)
 Remove a source connection. More...
 
bool DisconnectSrcAt (FBPlug arg1, object arg2)
 Remove a source connection at a specified index. More...
 
 EndChange (FBPlug arg1)
 Ends a change on multiple plugs. More...
 
object GetDst (FBPlug arg1, object arg2)
 Get a destination connection's plug at specified index. More...
 
int GetDstCount (FBPlug arg1)
 Get destination connection count. More...
 
FBConnectionType GetDstType (FBPlug arg1, object arg2)
 Get a destination connection's type at specified index. More...
 
object GetOwned (FBPlug arg1, object arg2)
 Get the owned plug at specified index. More...
 
int GetOwnedCount (FBPlug arg1)
 Get the owned plug count. More...
 
object GetOwner (FBPlug arg1)
 Get the owner of this plug. More...
 
object GetSrc (FBPlug arg1, object arg2)
 Get a source connection's plug at specified index. More...
 
int GetSrcCount (FBPlug arg1)
 Get source connection count. More...
 
FBConnectionType GetSrcType (FBPlug arg1, object arg2)
 Get a source connection's type at specified index. More...
 
bool Is (FBPlug arg1, object arg2)
 Is( int pTypeId ) More...
 
bool IsSDKComponent (FBPlug arg1)
 Return whether or not item is an SDK component. More...
 
 MoveSrcAt (...)
 
bool ReplaceDstAt (FBPlug arg1, object arg2, FBPlug arg3)
 Replace a destination connection at a specified index. More...
 
bool ReplaceSrcAt (FBPlug arg1, object arg2, FBPlug arg3)
 Replace a source connection at a specified index. More...
 
bool SwapSrc (FBPlug arg1, object arg2, object arg3)
 Swap source connection at index A with source connection at index B. More...
 
 SetSelfModified (FBPlug arg1, FBPlugModificationFlag arg2, object arg3)
 Set the plug's self modification flag. More...
 
bool GetSelfModified (FBPlug arg1, FBPlugModificationFlag arg2)
 Tell if the plug's self has changed. More...
 
 SetContentModified (FBPlug arg1, FBPlugModificationFlag arg2, object arg3)
 Set the plug's owned property/object's modification flag. More...
 
bool GetContentModified (FBPlug arg1, FBPlugModificationFlag arg2)
 Tell if the plug's content has changed. More...
 
int GetPlugConnectionModifiedList (FBPlug arg1, FBPlugList arg2, FBPlugModificationFlag arg3, object arg4)
 Get plug's modified src/dst property/object connection added/removed List. More...
 
bool RevertModification (FBPlug arg1, FBPlugModificationFlag arg2)
 Revert the plug's modification to original status. More...
 
 __init__ (...)
 
method staticmethod (function)
 
- Public Member Functions inherited from FBPythonWrapper
 __reduce__ ()
 
 __init__ (...)
 

Public Attributes

ORSDK2018::FBPropertyEventUIIdle OnUIIdle
 Event: User-interface idle event. More...
 
ORSDK2018::FBPropertyEventVideoFrameRendering OnVideoFrameRendering
 Event: A video frame rendering event occurred when the scene is being off-line rendered into video files. More...
 
ORSDK2018::FBPropertyEventConnectionNotify OnConnectionNotify
 Event: A connection event occurred between objects in the system. More...
 
ORSDK2018::FBPropertyEventConnectionDataNotify OnConnectionDataNotify
 Event: A data event occurred between objects in the system. More...
 
ORSDK2018::FBPropertyEventConnectionStateNotify OnConnectionStateNotify
 Event: A state change event occurred between objects in the system. More...
 
ORSDK2018::FBPropertyEventConnectionKeyingNotify OnConnectionKeyingNotify
 Event: A keying event occurred when objects are being keyed. More...
 
ORSDK2018::FBPropertyString ApplicationPath
 Read Only Property: Location where the application is installed. More...
 
FBPropertyAssetMng AssetManager
 Read Only Property: Current asset manager. More...
 
ORSDK2018::FBPropertyListAudioIn AudioInputs
 List: Available audio inputs. More...
 
ORSDK2018::FBPropertyListAudioOut AudioOutputs
 List: Available audio outputs. More...
 
object Cameras
 
object Materials
 
object Shaders
 
object Textures
 
object Takes
 
object Lights
 
object Devices
 
ORSDK2018::FBPropertyString ComputerName
 Read Only Property: Computer name. More...
 
ORSDK2018::FBPropertyString BuildId
 Read Only Property: Unique build Id string. More...
 
ORSDK2018::FBPropertyString BuildVersion
 Read Only Property: Unique build version string. More...
 
FBPropertyTake CurrentTake
 Read Write Property: Current take. More...
 
FBPropertyVector2d DesktopSize
 Read Only Property: The width and height of the desktop. More...
 
FBPropertyDouble FrameRate
 Read Only Property: The frame rate of the viewer. More...
 
FBPropertyDouble ProcessMemory
 Read Only Property: The size (MB) of process's working set memory. More...
 
FBPropertyDouble ProcessMemoryPeak
 Read Only Property: The size (MB) of process's peak memory. More...
 
FBPropertyBool FullScreenViewer
 Read Write Property: Indicates that the viewer is in full screen mode. More...
 
FBPropertyTime LocalTime
 Read Only Property: Local time in take. More...
 
ORSDK2018::FBPropertyString PathImages
 Read Only Property: Path to images. More...
 
ORSDK2018::FBPropertyString PathMeshs
 Read Only Property: Path to meshes More...
 
FBPropertyRenderer Renderer
 Read Only Property: Default renderer. More...
 
FBPropertyModel RootModel
 Read Only Property: Root model. More...
 
FBPropertyScene Scene
 Read Only Property: Scene. More...
 
FBPropertyModel SceneRootModel
 Read Only Property: Scene root model. More...
 
FBPropertyTime SystemTime
 Read Only Property: System time. More...
 
FBPropertyDouble Version
 Read Only Property: Application version. More...
 
ORSDK2018::FBPropertyListVideoIn VideoInputs
 List: Available video inputs. More...
 
ORSDK2018::FBPropertyListVideoOut VideoOutputs
 List: Available video outputs. More...
 
ORSDK2018::FBPropertyString ConfigPath
 
ORSDK2018::FBPropertyString UserConfigPath
 
ORSDK2018::FBPropertyListManipulator Manipulators
 List: of manipulators. More...
 
FBPropertyBool SuspendMessageBoxes
 Read Write Property: While true, all the message boxes, that would normally be displayed, are suspended. More...
 
FBPropertyBool AreMessageBoxesSuspended
 Read Only Property: While true, the system is suspending the messages boxes that would normally be displayed. More...
 
- Public Attributes inherited from FBComponent
object OwnerNamespace
 
ORSDK2018::FBPropertyListComponent Components
 List: List of components. More...
 
ORSDK2018::FBPropertyString Name
 Read Write Property: Unique name of object. More...
 
ORSDK2018::FBPropertyString LongName
 Read Write Property: Name and namespace for object. More...
 
object FullName
 
ORSDK2018::FBPropertyListComponent Parents
 List: Parents. More...
 
ORSDK2018::FBPropertyManager PropertyList
 Read Only Property: Manages all of the properties for the component. More...
 
FBPropertyBool Selected
 Read Write Property: Selected property. More...
 
- Public Attributes inherited from FBPythonWrapper
object OnUnbind
 

Member Function Documentation

__init__ ( object  arg1)

Constructor.

Python Docstring:

__init__( (object)arg1) -> None 

C++ Signature:

 FBSystem() 
__reduce__ ( )
str CurrentDirectory ( FBSystem  arg1)

Get current work directory.

Python Docstring:

CurrentDirectory( (FBSystem)arg1) -> str 

C++ Signature:

ORSDK2018::FBString CurrentDirectory() 
Returns
current work directory.
FBStringList GetCommandLineArgs ( FBSystem  arg1)

Returns the command line arguments for SDK.

Python Docstring:

GetCommandLineArgs( (FBSystem)arg1) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetCommandLineArgs() 

This function returns portion of the command line arguments within a pair of delimiters (–sdk-begin & –sdk-end). Example:

Note that "-console", "-suspendMessages" and "C:\temp\sample.fbx" are for MotionBuilder itself hence are consumed accordingly. Only those arguments between –sdk-begin and –sdk-end are accessible with this function. In this example, they will be "--department mocap --usage on-stage" This SDK command line argument is useful for plugin deployment and management in large production facility, where different department or different workflow may require a different set of plugins or functionality/behavior dynamically. Python users also have access to this through official built-in module sys.argv which could be parsed easily via argparse module.

Returns
the command line arguments
FBStringList GetLoadedPluginItemGroups ( FBSystem  arg1,
str  arg2 
)

Returns a string list containing the groups list in which the specified plug-in item's name belongs to.

Python Docstring:

GetLoadedPluginItemGroups( (FBSystem)arg1, (str)arg2) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetLoadedPluginItemGroups(const char * pPluginItemName) 
Returns
the groups list in which the specified plug-in item's name belongs to.
FBStringList GetLoadedPluginItemInfo ( FBSystem  arg1,
str  arg2 
)

Returns a string list containing the information of the specified plug-in item's name.

Python Docstring:

GetLoadedPluginItemInfo( (FBSystem)arg1, (str)arg2) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetLoadedPluginItemInfo(const char * pPluginItemName) 

A specific plug-in item information can be retrieved from the returned string list with a EPluginItemInfo enum value.

Returns
the information of the specified plug-in item's name.
FBStringList GetLoadedPluginItemsName ( FBSystem  arg1)

Returns a string list containing the names of all the loaded plug-in.

Python Docstring:

GetLoadedPluginItemsName( (FBSystem)arg1) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetLoadedPluginItemsName() 
Returns
the names of all the loaded plug-in.
FBStringList GetPluginPath ( FBSystem  arg1)

Returns the plugin path.

Python Docstring:

GetPluginPath( (FBSystem)arg1) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetPluginPath() 

By default, MotionBuilder searches C++ plug-ins and load them at start-up. Users could provide additional plugin paths by setting environment variable "MOTIONBUILDER_PLUGIN_PATH" before running MotionBuilder.

Returns
the plugin path
FBStringList GetPythonStartupPath ( FBSystem  arg1)

Returns the python startup path.

Python Docstring:

GetPythonStartupPath( (FBSystem)arg1) -> FBStringList 

C++ Signature:

const ORSDK2018::FBStringList & GetPythonStartupPath() 

User could put python script in the startup folders, and MotionBuilder will search scripts from those folders and run them at startup. By default, there are two startup folders: /config/PythonStartup and /bin/config/PythonStartup. Users could append additional paths by setting environment variable "MOTIONBUILDER_PYTHON_STARTUP" before launching application.

Returns
the python startup path
str MakeFullPath ( FBSystem  arg1,
str  arg2 
)

Return the full path.

Python Docstring:

MakeFullPath( (FBSystem)arg1, (str)arg2) -> str 

C++ Signature:

ORSDK2018::FBString MakeFullPath(const char * pRelativeFilePath) 
Parameters
pRelativeFilePathThe relative file path
Returns
Full file path based on combining the current directory

Member Data Documentation

ORSDK2018::FBPropertyString ApplicationPath

Read Only Property: Location where the application is installed.

FBPropertyBool AreMessageBoxesSuspended

Read Only Property: While true, the system is suspending the messages boxes that would normally be displayed.

It will return true if either the -suspendMessages argument is set when launching MotionBuilder or if the SuspendMessageBoxes property, used as a temporary solution, is currently set to true.

FBPropertyAssetMng AssetManager

Read Only Property: Current asset manager.

ORSDK2018::FBPropertyListAudioIn AudioInputs

List: Available audio inputs.

ORSDK2018::FBPropertyListAudioOut AudioOutputs

List: Available audio outputs.

ORSDK2018::FBPropertyString BuildId

Read Only Property: Unique build Id string.

ORSDK2018::FBPropertyString BuildVersion

Read Only Property: Unique build version string.

The format of the build version information is: Major.Minor.Revision.BuildNumber. All sub-parts of the build version string are containing only numeric characters.

Cameras
Note
Deprecated FBSystem.Cameras: Use FBSystem.Scene.Cameras to access this property.
ORSDK2018::FBPropertyString ComputerName

Read Only Property: Computer name.

ORSDK2018::FBPropertyString ConfigPath
FBPropertyTake CurrentTake

Read Write Property: Current take.

FBPropertyVector2d DesktopSize

Read Only Property: The width and height of the desktop.

Devices
Note
Deprecated FBSystem.Devices: Use FBSystem.Scene.Devices to access this property.
FBPropertyDouble FrameRate

Read Only Property: The frame rate of the viewer.

FBPropertyBool FullScreenViewer

Read Write Property: Indicates that the viewer is in full screen mode.

Lights
Note
Deprecated FBSystem.Lights: Use FBSystem.Scene.Lights to access this property.
FBPropertyTime LocalTime

Read Only Property: Local time in take.

ORSDK2018::FBPropertyListManipulator Manipulators

List: of manipulators.

Materials
Note
Deprecated FBSystem.Materials: Use FBSystem.Scene.Materials to access this property.
ORSDK2018::FBPropertyEventConnectionDataNotify OnConnectionDataNotify

Event: A data event occurred between objects in the system.

ORSDK2018::FBPropertyEventConnectionKeyingNotify OnConnectionKeyingNotify

Event: A keying event occurred when objects are being keyed.

ORSDK2018::FBPropertyEventConnectionNotify OnConnectionNotify

Event: A connection event occurred between objects in the system.

ORSDK2018::FBPropertyEventConnectionStateNotify OnConnectionStateNotify

Event: A state change event occurred between objects in the system.

ORSDK2018::FBPropertyEventUIIdle OnUIIdle

Event: User-interface idle event.

Useful callback for less frequent GUI refresh and etc. lightweight tasks (occur once per several frames).

ORSDK2018::FBPropertyEventVideoFrameRendering OnVideoFrameRendering

Event: A video frame rendering event occurred when the scene is being off-line rendered into video files.

ORSDK2018::FBPropertyString PathImages

Read Only Property: Path to images.

ORSDK2018::FBPropertyString PathMeshs

Read Only Property: Path to meshes

FBPropertyDouble ProcessMemory

Read Only Property: The size (MB) of process's working set memory.

FBPropertyDouble ProcessMemoryPeak

Read Only Property: The size (MB) of process's peak memory.

FBPropertyRenderer Renderer

Read Only Property: Default renderer.

FBPropertyModel RootModel

Read Only Property: Root model.

FBPropertyScene Scene

Read Only Property: Scene.

FBPropertyModel SceneRootModel

Read Only Property: Scene root model.

Shaders
Note
Deprecated FBSystem.Shaders: Use FBSystem.Scene.Shaders to access this property.
FBPropertyBool SuspendMessageBoxes

Read Write Property: While true, all the message boxes, that would normally be displayed, are suspended.

This property should be used as a temporary solution for unwanted message boxes, while running a script for example. For system wide usage, the -suspendMessages argument, set when launching MotionBuilder, should be used instead. To test if the system is suspending the message boxes either temporarily or permanently, the AreMessageBoxesSuspended property should be used instead.

FBPropertyTime SystemTime

Read Only Property: System time.

Takes
Note
Deprecated FBSystem.Takes: Use FBSystem.Scene.Takes to access this property.
Textures
Note
Deprecated FBSystem.Textures: Use FBSystem.Scene.Textures to access this property.
ORSDK2018::FBPropertyString UserConfigPath

Read Only Property: Application version.

ORSDK2018::FBPropertyListVideoIn VideoInputs

List: Available video inputs.

ORSDK2018::FBPropertyListVideoOut VideoOutputs

List: Available video outputs.