This reference page is linked to from the following overview topics: I/O Settings, Customizing the FBX SDK, Importing a Scene, Your First FBX SDK Program, Exporting a Scene, FBX Scenes, FBX SDK 2014, Using Python FBX with Eclipse, Merging Two Scenes, FBX SDK 2013, Customizing File Formats with FBX SDK I/O Plug-ins, FBX SDK Object Model, FBX Objects, Managing Memory with the FBX SDK Manager, List of Python Fbx classes.
#include <fbxmanager.h>
SDK object manager.
The SDK manager is in charge of:
It is possible to override memory allocation functions throughout the FBX SDK by providing system memory allocation functions using the handler set functions below. It must be done before the first FbxManager creation.
FbxSetMallocHandler(); FbxSetCallocHandler(); FbxSetReallocHandler(); FbxSetFreeHandler();
Upon destruction, all objects allocated by the SDK manager and not explicitly destroyed are destroyed as well. A derived class can be defined to allocate and deallocate specialized scene elements.
Animation/main.cxx, Camera/main.cxx, Common/Common.cxx, Common/Common.h, ConvertScene/main.cxx, ExportDocument/main.cxx, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ExportShader/main.cxx, ImportScene/main.cxx, Instances/main.cxx, Layers/main.cxx, MyOwnWriterReader/MyOwnReader.cxx, MyOwnWriterReader/MyOwnReader.h, MyOwnWriterReader/MyOwnWriter.cxx, MyOwnWriterReader/MyOwnWriter.h, MyOwnWriterReader/MyOwnWriterReader.cxx, MyOwnWriterReader/MyOwnWriterReader.h, Normals/main.cxx, Pivot/main.cxx, ProceduralTexture/main.cxx, StereoCamera/main.cxx, SwitchBinding/main.cxx, Transformations/main.cxx, UI_Examples/Common/ImportExport.cxx, UI_Examples/Common/ImportExport.h, UI_Examples/CubeCreator/SDK_Utility.cxx, UI_Examples/CubeCreator/SDK_Utility.h, UI_Examples/CubeCreator/UI.cxx, UI_Examples/ImportExport/UI.cxx, UI_Examples/SceneTreeView/SDK_Utility.cxx, UI_Examples/SceneTreeView/SDK_Utility.h, UI_Examples/SceneTreeView/UI.cxx, UserProperties/main.cxx, UVSample/main.cxx, and ViewScene/SceneContext.h.
Definition at line 55 of file fbxmanager.h.
Public Member Functions |
|
| int | GetDocumentCount () |
| Get the count of document available in this
manager. |
|
| FbxDocument * | GetDocument (int pIndex) |
| Get the document at pIndex in the manager's
list. |
|
Static Public Member Functions |
|
| static FbxString | PrefixName (const char *pPrefix, const char *pName) |
| Add a prefix to a name. |
|
FBX SDK Manager Creation/Destruction |
|
| static FbxManager * | Create () |
| SDK manager allocation method. |
|
| virtual void | Destroy () |
| Destructor. |
|
Versions Queries |
|
| static const char * | GetVersion (bool pFull=true) |
| Get FBX SDK version string. |
|
| static void | GetFileFormatVersion (int &pMajor, int &pMinor, int &pRevision) |
| Get the current default FBX file format
version number for this version of the FBX SDK. |
|
Object Registration, Definition and Management |
|
| template<typename T1 , typename T2 > | |
| FbxClassId | RegisterFbxClass (const char *pName, const T1 *, const T2 *, const char *pFbxFileTypeName=0, const char *pFbxFileSubTypeName=0) |
| Class registration. |
|
| template<typename T > | |
| FbxClassId | RegisterRuntimeFbxClass (const char *pName, const T *, const char *pFbxFileTypeName=0, const char *pFbxFileSubTypeName=0) |
| Runtime class registration. |
|
| void | UnregisterRuntimeFbxClass (const char *pName) |
| Runtime class unregistration. |
|
| template<typename T1 , typename T2 > | |
| FbxClassId | OverrideFbxClass (const T1 *pFBX_TYPE_Class, const T2 *pFBX_TYPE_OverridenClass) |
| Override class. |
|
| FbxObject * | CreateNewObjectFromClassId (FbxClassId pClassId, const char *pName, FbxObject *pContainer=NULL, const FbxObject *pCloneFrom=NULL) |
| Create a new object of the specified
ClassId. |
|
| FbxClassId | FindClass (const char *pClassName) const |
| Find class by the specified name. |
|
| FbxClassId | FindFbxFileClass (const char *pFbxFileTypeName, const char *pFbxFileSubTypeName) const |
| Find file class. |
|
| template<typename T > | |
| void | UnregisterFbxClass (const T *pFBX_TYPE_Class) |
| Class unregistration. |
|
Data Type Management |
|
| FbxDataType | CreateDataType (const char *pName, const EFbxType pType) |
| Register a new data type to the manager.
|
|
| int | GetDataTypeCount () const |
| List the data types. |
|
| FbxDataType & | GetDataType (const int pIndex) const |
| Find a data types at pIndex. |
|
| FbxDataType & | GetDataTypeFromName (const char *pDataType) const |
| Find a data type from the type name.
|
|
User Notification Object |
|
| FbxUserNotification * | GetUserNotification () const |
| Access to the unique UserNotification
object. |
|
| void | SetUserNotification (FbxUserNotification *pUN) |
| Set the user notification. |
|
IOSettings Object |
|
| virtual FbxIOSettings * | GetIOSettings () const |
| Access to a IOSettings object. |
|
| virtual void | SetIOSettings (FbxIOSettings *pIOSettings) |
| Set the IOSettings pointer. |
|
Message Emitter (for Message Logging) |
|
| FbxMessageEmitter & | GetMessageEmitter () |
| Access to the unique FbxMessageEmitter
object. |
|
| bool | SetMessageEmitter (FbxMessageEmitter *pMessageEmitter) |
| Sets to the unique FbxMessageEmitter object.
|
|
Localization Hierarchy |
|
| void | AddLocalization (FbxLocalizationManager *pLocManager) |
| Add a localization object to the known
localization providers. |
|
| void | RemoveLocalization (FbxLocalizationManager *pLocManager) |
| Remove a localization object from the known
localization providers. |
|
| bool | SetLocale (const char *pLocale) |
| Select the current locale for localization.
|
|
| const char * | Localize (const char *pID, const char *pDefault=NULL) const |
| Localization helper function. |
|
XRef Manager |
|
| FbxXRefManager & | GetXRefManager () |
| Retrieve the manager responsible for
managing object XRef resolution. |
|
Library Management |
|
| FbxLibrary * | GetRootLibrary () const |
| Retrieve the main object Libraries. |
|
| FbxLibrary * | GetSystemLibraries () const |
| FbxLibrary * | GetUserLibraries () const |
Plug-in Registry Object |
|
| FbxIOPluginRegistry * | GetIOPluginRegistry () const |
| Access to the unique FbxIOPluginRegistry
object. |
|
Fbx Generic Plugins Management |
|
| bool | LoadPluginsDirectory (const char *pFilename, const char *pExtensions=NULL) |
| Load plug-ins directory. |
|
| bool | LoadPlugin (const char *pFilename) |
| Load plug-in. |
|
| bool | UnloadPlugins () |
| Unload all plug-ins. |
|
| bool | EmitPluginsEvent (const FbxEventBase &pEvent) |
| Emit plugins event. |
|
| FbxArray< const FbxPlugin * > | GetPlugins () const |
| Get plugins. |
|
| int | GetPluginCount () const |
| get plugins count |
|
| FbxPlugin * | FindPlugin (const char *pName, const char *pVersion) const |
| Find plug in. |
|
IO Settings |
|
| void | FillIOSettingsForReadersRegistered (FbxIOSettings &pIOS) |
| Fill IO Settings for registered readers.
|
|
| void | FillIOSettingsForWritersRegistered (FbxIOSettings &pIOS) |
| Fill IO Settings for registered writers.
|
|
| void | FillCommonIOSettings (FbxIOSettings &pIOS, bool pImport) |
| Fill common IO Settings. |
|
Global Object Management |
|
| void | RegisterObject (FbxObject *pObject) |
| Register object with the manager. |
|
| void | UnregisterObject (FbxObject *pObject) |
| Unregister object with the manager. |
|
| void | RegisterObjects (const FbxArray< FbxObject * > &pArray) |
| Register a list of objects with the manager.
|
|
| void | UnregisterObjects (const FbxArray< FbxObject * > &pArray) |
| Unregister a list of objects with the
manager. |
|
| void | IncreaseDestroyingSceneFlag () |
| Increment the scene destroying counter.
|
|
| void | DecreaseDestroyingSceneFlag () |
| Shrink the object list and decrements the
scene destroying counter. |
|
Reference Management |
|
| int | GetReferenceCount () const |
| Get number of references. |
|
| FbxSceneReference * | GetReference (int pIndex) const |
| Get reference at given index. |
|
| int | AddReference (FbxSceneReference *pReference) |
| Add a reference. |
|
| bool | RemoveReference (FbxSceneReference *pReference) |
| Remove the specified reference from
reference list. |
|
| bool | ClearReference (FbxSceneReference *pReference) |
| Clear the specified reference from the SDK
manager. |
|
| static FbxManager* Create | ( | ) | [static] |
SDK manager allocation method.
NULL if this is an
evaluation copy of the FBX SDK and it is expired.| virtual void Destroy | ( | ) | [virtual] |
Destructor.
Deallocates all object previously created by the SDK manager.
| static const char* GetVersion | ( | bool | pFull = true |
) | [static] |
Get FBX SDK version string.
| pFull | If true, the complete version string including revision number and release date will be returned, otherwise only the version numbering is returned. |
| static void GetFileFormatVersion | ( | int & | pMajor, |
| int & | pMinor, | ||
| int & | pRevision | ||
| ) | [static] |
Get the current default FBX file format version number for this version of the FBX SDK.
| pMajor | Version major number. |
| pMinor | Version minor number. |
| pRevision | Version revision number. |
| FbxClassId RegisterFbxClass | ( | const char * | pName, |
| const T1 * | , | ||
| const T2 * | , | ||
| const char * | pFbxFileTypeName =
0, |
||
| const char * | pFbxFileSubTypeName =
0 |
||
| ) | [inline] |
Class registration.
| pName | The class name. For example, "FbxMesh" for FbxMesh class. |
| T1 | FBX type of the specified class. |
| T2 | FBX type of parent class. |
| pFbxFileTypeName | The type name of the class in FBX file. |
| pFbxFileSubTypeName | The sub type name of the class in FBX file. |
RegisterFbxClass("FbxCamera", FBX_TYPE(FbxCamera), FBX_TYPE(FbxNodeAttribute));
Definition at line 107 of file fbxmanager.h.
{
T1::ClassId = Internal_RegisterFbxClass(pName, T2::ClassId, (FbxObjectCreateProc)T1::Allocate, pFbxFileTypeName, pFbxFileSubTypeName);
return T1::ClassId;
}
| FbxClassId RegisterRuntimeFbxClass | ( | const char * | pName, |
| const T * | , | ||
| const char * | pFbxFileTypeName =
0, |
||
| const char * | pFbxFileSubTypeName =
0 |
||
| ) | [inline] |
Runtime class registration.
| pName | The class name. For example, "FbxUIWidgetBoolean". |
| T | FBX type of parent class. |
| pFbxFileTypeName | The type name of the class in FBX file. |
| pFbxFileSubTypeName | The sub type name of the class in FBX file. |
RegisterRuntimeFbxClass( "FbxUIWidgetBoolean", FBX_TYPE(FbxUIWidgetDefinition), NULL, "FbxUIWidgetBoolean");
Definition at line 122 of file fbxmanager.h.
{
return Internal_RegisterFbxClass(pName, T::ClassId, (FbxObjectCreateProc)T::Allocate, pFbxFileTypeName, pFbxFileSubTypeName);
}
| void UnregisterRuntimeFbxClass | ( | const char * | pName | ) | [inline] |
Runtime class unregistration.
| pName | The class name. |
Definition at line 130 of file fbxmanager.h.
{
FbxClassId lClassId = FindClass(pName);
if( !(lClassId == FbxClassId()) )
{
Internal_UnregisterFbxClass(lClassId);
}
}
| FbxClassId OverrideFbxClass | ( | const T1 * | pFBX_TYPE_Class, |
| const T2 * | pFBX_TYPE_OverridenClass | ||
| ) | [inline] |
Override class.
| pFBX_TYPE_Class | FBX type of class. |
| pFBX_TYPE_OverridenClass | FBX type of overridden class. |
Definition at line 144 of file fbxmanager.h.
{
T1::ClassId = Internal_OverrideFbxClass(T2::ClassId,(FbxObjectCreateProc)T1::Allocate );
return T1::ClassId;
}
| FbxObject* CreateNewObjectFromClassId | ( | FbxClassId | pClassId, |
| const char * | pName, | ||
| FbxObject * | pContainer = NULL, |
||
| const FbxObject * | pCloneFrom =
NULL |
||
| ) |
Create a new object of the specified ClassId.
| pClassId | The ClassId of the object to be created. |
| pName | The name given to the newly created object. |
| pContainer | An optional parameter to specify which object will "contain" the new object. By contain, we mean the new object will become a source to the container, connection-wise. |
| pCloneFrom | A valid object pointer to use as the reference for cloning the object upon construction. |
| FbxClassId FindClass | ( | const char * | pClassName | ) | const |
Find class by the specified name.
| pClassName | Class Name to find. |
| FbxClassId FindFbxFileClass | ( | const char * | pFbxFileTypeName, |
| const char * | pFbxFileSubTypeName | ||
| ) | const |
Find file class.
| pFbxFileTypeName | Specify the type name in FBX file to find. |
| pFbxFileSubTypeName | Specify by The sub type name in FBX file to find. |
| void UnregisterFbxClass | ( | const T * | pFBX_TYPE_Class | ) | [inline] |
Class unregistration.
| pFBX_TYPE_Class | FBX type of unregistered class. |
Definition at line 176 of file fbxmanager.h.
{
Internal_UnregisterFbxClass(T::ClassId);
T::ClassId = FbxClassId();
}
| FbxDataType CreateDataType | ( | const char * | pName, |
| const EFbxType | pType | ||
| ) |
Register a new data type to the manager.
| pName | The type name. |
| pType | The data type. |
| int GetDataTypeCount | ( | ) | const |
| FbxDataType& GetDataType | ( | const int | pIndex | ) | const |
Find a data types at pIndex.
| pIndex | The data type index. |
| FbxDataType& GetDataTypeFromName | ( | const char * | pDataType | ) | const |
Find a data type from the type name.
| pDataType | The type name. |
| FbxUserNotification* GetUserNotification | ( | ) | const |
Access to the unique UserNotification object.
NULL
if the object has not been allocated.| void SetUserNotification | ( | FbxUserNotification * | pUN | ) |
| virtual FbxIOSettings* GetIOSettings | ( | ) | const [virtual] |
Access to a IOSettings object.
NULL if
the object has not been allocated.| virtual void SetIOSettings | ( | FbxIOSettings * | pIOSettings | ) | [virtual] |
Set the IOSettings pointer.
| pIOSettings |
| FbxMessageEmitter& GetMessageEmitter | ( | ) |
Access to the unique FbxMessageEmitter object.
| bool SetMessageEmitter | ( | FbxMessageEmitter * | pMessageEmitter | ) |
Sets to the unique FbxMessageEmitter object.
| pMessageEmitter | the emitter to use, passing NULL will reset to the default emitter. The object will be deleted when the SDK manager is destroyed, thus ownership is transfered. |
| void AddLocalization | ( | FbxLocalizationManager * | pLocManager | ) |
Add a localization object to the known localization providers.
| pLocManager | the localization object to register. |
| void RemoveLocalization | ( | FbxLocalizationManager * | pLocManager | ) |
Remove a localization object from the known localization providers.
| pLocManager | the localization object to remove. |
| bool SetLocale | ( | const char * | pLocale | ) |
Select the current locale for localization.
| pLocale | the locale name, for example "fr" or "en-US". |
| const char* Localize | ( | const char * | pID, |
| const char * | pDefault =
NULL |
||
| ) | const |
Localization helper function.
Calls each registered localization manager until one can localizes the text.
| pID | the identifier for the text to localize. |
| pDefault | the default text. Uses pID if NULL. |
| FbxXRefManager& GetXRefManager | ( | ) |
Retrieve the manager responsible for managing object XRef resolution.
| FbxLibrary* GetRootLibrary | ( | ) | const |
| FbxLibrary* GetSystemLibraries | ( | ) | const |
| FbxLibrary* GetUserLibraries | ( | ) | const |
| FbxIOPluginRegistry* GetIOPluginRegistry | ( | ) | const |
Access to the unique FbxIOPluginRegistry object.
| bool LoadPluginsDirectory | ( | const char * | pFilename, |
| const char * | pExtensions =
NULL |
||
| ) |
Load plug-ins directory.
| pFilename | The directory path. |
| pExtensions | The plug in extension. |
True| bool LoadPlugin | ( | const char * | pFilename | ) |
| bool UnloadPlugins | ( | ) |
Unload all plug-ins.
| bool EmitPluginsEvent | ( | const FbxEventBase & | pEvent | ) |
Get plugins.
| int GetPluginCount | ( | ) | const |
| FbxPlugin* FindPlugin | ( | const char * | pName, |
| const char * | pVersion | ||
| ) | const |
Find plug in.
| pName | The plug in name. |
| pVersion | The plug in version. |
null if not found.| void FillIOSettingsForReadersRegistered | ( | FbxIOSettings & | pIOS | ) |
Fill IO Settings for registered readers.
| pIOS | The properties hierarchies to fill. |
| void FillIOSettingsForWritersRegistered | ( | FbxIOSettings & | pIOS | ) |
Fill IO Settings for registered writers.
| pIOS | The properties hierarchies to fill. |
| void FillCommonIOSettings | ( | FbxIOSettings & | pIOS, |
| bool | pImport | ||
| ) |
Fill common IO Settings.
| pIOS | The properties hierarchies to fill. |
| pImport | If true, import properties are set, otherwise
export properties are set. |
| void RegisterObject | ( | FbxObject * | pObject | ) |
Register object with the manager.
| void UnregisterObject | ( | FbxObject * | pObject | ) |
Unregister object with the manager.
| pObject | The object to be unregistered. |
Register a list of objects with the manager.
| pArray | The list of object to be registered. |
Unregister a list of objects with the manager.
| pArray | The list of object to be unregistered. |
| void IncreaseDestroyingSceneFlag | ( | ) |
Increment the scene destroying counter.
| void DecreaseDestroyingSceneFlag | ( | ) |
Shrink the object list and decrements the scene destroying counter.
| int GetReferenceCount | ( | ) | const |
| FbxSceneReference* GetReference | ( | int | pIndex | ) | const |
Get reference at given index.
| pIndex | Position in the list of references. |
NULL if index is out
of bounds.| int AddReference | ( | FbxSceneReference * | pReference | ) |
Add a reference.
| pReference | The reference to be added. |
true otherwise, if the reference is already there,
returns false.| bool RemoveReference | ( | FbxSceneReference * | pReference | ) |
Remove the specified reference from reference list.
| pReference | The reference to be removed. |
true otherwise, if the reference could not be found
returns false.| bool ClearReference | ( | FbxSceneReference * | pReference | ) |
Clear the specified reference from the SDK manager.
| pReference | The reference to be removed. |
true otherwise, if the reference could not be
found returns false.| static FbxString PrefixName | ( | const char * | pPrefix, |
| const char * | pName | ||
| ) | [static] |
Add a prefix to a name.
| pPrefix | The prefix to be added to the pName. This string
must contain the "::" characters in order to be considered as a
prefix. |
| pName | The name to be prefix. |
pPrefix.| int GetDocumentCount | ( | ) |
Get the count of document available in this manager.
| FbxDocument* GetDocument | ( | int | pIndex | ) |
Get the document at pIndex in the manager's list.
| pIndex | The index of the document to retrieve. |