FbxIOPluginRegistry Class Reference
 
 
 
FbxIOPluginRegistry Class Reference

This reference page is linked to from the following overview topics: Customizing File Formats with FBX SDK I/O Plug-ins, List of Python Fbx classes.


#include <fbxiopluginregistry.h>


Class Description

This class serves as the registrar for file formats.

A file format must be registered when it is used by the FBX SDK.

This class also lets you create and read formats other than FBX SDK native formats. Users of FBX SDK can write their own plug-ins to read or write arbitrary file formats. Once their plug-ins are registered in this class, FBX SDK is able to read or write these file formats.

Each FbxManager has a unique FbxIOPluginRegistry. To get an instance of this class:

 FbxIOPluginRegistry* registry = manager->GetIOPluginRegistry();
See also:
FbxManager::GetIOPluginRegistry()

Definition at line 37 of file fbxiopluginregistry.h.

List of all members.

Public Member Functions

  FbxIOPluginRegistry ()
  Constructor.
virtual  ~FbxIOPluginRegistry ()
  Destructor.
void  RegisterReader (const char *pPluginPath, int &pFirstPluginID, int &pRegisteredCount, bool pOverride=false)
  Registers a Reader from a plug-in path.
void  RegisterReader (FbxReader::CreateFuncType pCreateF, FbxReader::GetInfoFuncType pInfoF, int &pFirstPluginID, int &pRegisteredCount, FbxReader::IOSettingsFillerFuncType pIOSettingsFillerF=NULL, bool pOverride=false)
  Registers a Reader.
void  RegisterWriter (const char *pPluginPath, int &pFirstPluginID, int &pRegisteredCount, bool pOverride=false)
  Registers a Writer from a plug-in path.
void  RegisterWriter (FbxWriter::CreateFuncType pCreateF, FbxWriter::GetInfoFuncType pInfoF, int &pFirstPluginID, int &pRegisteredCount, FbxWriter::IOSettingsFillerFuncType pIOSettingsFillerF=NULL, bool pOverride=false)
  Registers a Writer.
FbxReader CreateReader (FbxManager &pManager, FbxImporter &pImporter, int pPluginID) const
  Creates a Reader.
FbxWriter CreateWriter (FbxManager &pManager, FbxExporter &pExporter, int pPluginID) const
  Creates a Writer.
int  FindReaderIDByExtension (const char *pExt) const
  Searches for the Reader ID by the file extension.
int  FindWriterIDByExtension (const char *pExt) const
  Searches for the Writer ID by the file extension.
int  FindReaderIDByDescription (const char *pDesc) const
  Searches for the Reader ID by the file format description.
int  FindWriterIDByDescription (const char *pDesc) const
  Searches for the Writer ID by the file format description.
bool  ReaderIsFBX (int pFileFormat) const
  Verifies if the file format of the Reader is FBX.
bool  WriterIsFBX (int pFileFormat) const
  Verifies if the file format of the Writer is FBX.
bool  ReaderIsGenuine (int pFileFormat) const
  Verifies if the file format of the Reader is genuine (internal).
bool  WriterIsGenuine (int pFileFormat) const
  Verifies if the file format of the Writer is genuine (internal).
int  GetReaderFormatCount () const
  Returns the number of file formats that can be imported.
int  GetWriterFormatCount () const
  Returns the number of file formats that can be exported.
const char *  GetReaderFormatDescription (int pFileFormat) const
  Returns the description of an importable file format.
const char *  GetWriterFormatDescription (int pFileFormat) const
  Returns the description of an exportable file format.
const char *  GetReaderFormatExtension (int pFileFormat) const
  Returns an importable file format's file extension.
const char *  GetWriterFormatExtension (int pFileFormat) const
  Returns an exportable file format's file extension.
char const *const  GetWritableVersions (int pFileFormat) const
  Returns a list of the writable file format versions.
bool  DetectReaderFileFormat (const char *pFileName, int &pFileFormat) const
  Detects the import (reader) file format specified for the file.
bool  DetectWriterFileFormat (const char *pFileName, int &pFileFormat) const
  Detects the export (writer) file format specified for the file.
int  GetNativeReaderFormat ()
  Returns the file format of the native Reader.
int  GetNativeWriterFormat ()
  Returns the file format of the native Writer.
void  FillIOSettingsForReadersRegistered (FbxIOSettings &pIOS)
  Fills the IO Settings for all registered readers.
void  FillIOSettingsForWritersRegistered (FbxIOSettings &pIOS)
  Fills the IO Settings for all registered writers.

Constructor & Destructor Documentation

Constructor.

virtual ~FbxIOPluginRegistry ( ) [virtual]

Destructor.


Member Function Documentation

void RegisterReader ( const char *  pPluginPath,
int &  pFirstPluginID,
int &  pRegisteredCount,
bool  pOverride = false 
)

Registers a Reader from a plug-in path.

Parameters:
pPluginPath The plug-in path.
pFirstPluginID Contains the ID of the first plug-in found.
pRegisteredCount Contains the number of registered Readers.
pOverride Override any existing writer that is using the same extension.
Examples:
ExportScene05/main.cxx.
void RegisterReader ( FbxReader::CreateFuncType  pCreateF,
FbxReader::GetInfoFuncType  pInfoF,
int &  pFirstPluginID,
int &  pRegisteredCount,
FbxReader::IOSettingsFillerFuncType  pIOSettingsFillerF = NULL,
bool  pOverride = false 
)

Registers a Reader.

Parameters:
pCreateF The function that creates the Reader to be registered.
pInfoF The function that provides information about the Reader file format, such as the file extension and description.
pFirstPluginID Contains the ID of the first plug-in found.
pRegisteredCount Contains the number of registered Readers.
pIOSettingsFillerF The function that fills the IO settings for the Reader.
pOverride Override any existing writer that is using the same extension.
void RegisterWriter ( const char *  pPluginPath,
int &  pFirstPluginID,
int &  pRegisteredCount,
bool  pOverride = false 
)

Registers a Writer from a plug-in path.

Parameters:
pPluginPath The plug-in path.
pFirstPluginID Contains the ID of the first plug-in found.
pRegisteredCount Contains the number of registered Writers.
pOverride Override any existing writer that is using the same extension.
Examples:
ExportScene05/main.cxx.
void RegisterWriter ( FbxWriter::CreateFuncType  pCreateF,
FbxWriter::GetInfoFuncType  pInfoF,
int &  pFirstPluginID,
int &  pRegisteredCount,
FbxWriter::IOSettingsFillerFuncType  pIOSettingsFillerF = NULL,
bool  pOverride = false 
)

Registers a Writer.

Parameters:
pCreateF The function that creates the Writer to be registered.
pInfoF The function that provides information about the Writer file format, such as the file extension, description and version.
pFirstPluginID Contains the ID of the first plug-in found.
pRegisteredCount Contains the number of registered Writers.
pIOSettingsFillerF The function that fills the IO settings for the Writer.
pOverride Override any existing writer that is using the same extension.
FbxReader* CreateReader ( FbxManager pManager,
FbxImporter pImporter,
int  pPluginID 
) const

Creates a Reader.

Parameters:
pManager The SDK Manager where the Reader is created.
pImporter The importer that holds the created Reader.
pPluginID The Reader ID.
FbxWriter* CreateWriter ( FbxManager pManager,
FbxExporter pExporter,
int  pPluginID 
) const

Creates a Writer.

Parameters:
pManager The SDK Manager where the Writer is created.
pExporter The exporter that holds the created Writer.
pPluginID The Writer ID.
int FindReaderIDByExtension ( const char *  pExt ) const

Searches for the Reader ID by the file extension.

Parameters:
pExt The file extension.
Returns:
The Reader ID if found, if not found, returns -1
int FindWriterIDByExtension ( const char *  pExt ) const

Searches for the Writer ID by the file extension.

Parameters:
pExt The file extension.
Returns:
The Writer ID if found, if not found, returns -1
Examples:
ExportScene05/main.cxx.
int FindReaderIDByDescription ( const char *  pDesc ) const

Searches for the Reader ID by the file format description.

Parameters:
pDesc The file format description.
Returns:
The Reader ID if found, if not found, returns -1
int FindWriterIDByDescription ( const char *  pDesc ) const

Searches for the Writer ID by the file format description.

Parameters:
pDesc The file format description.
Returns:
The Writer ID if found, if not found, returns -1.
Examples:
ConvertScene/main.cxx, and UserProperties/main.cxx.
bool ReaderIsFBX ( int  pFileFormat ) const

Verifies if the file format of the Reader is FBX.

Parameters:
pFileFormat The file format identifier.
Returns:
True if the file format of the Reader is FBX, return false otherwise..
bool WriterIsFBX ( int  pFileFormat ) const

Verifies if the file format of the Writer is FBX.

Parameters:
pFileFormat The file format identifier.
Returns:
True if the file format of the Writer is FBX, return false otherwise.
Examples:
Common/Common.cxx, ExportDocument/main.cxx, UI_Examples/Common/ImportExport.cxx, and UI_Examples/CubeCreator/SDK_Utility.cxx.
bool ReaderIsGenuine ( int  pFileFormat ) const

Verifies if the file format of the Reader is genuine (internal).

Parameters:
pFileFormat The file format identifier.
Returns:
True if the file format of the Reader is FBX, DXF, 3DS, OBJ and DAE, return false otherwise.
bool WriterIsGenuine ( int  pFileFormat ) const

Verifies if the file format of the Writer is genuine (internal).

Parameters:
pFileFormat The file format identifier.
Returns:
True if the file format of the Writer is FBX, DXF, 3DS, OBJ and DAE, return false otherwise.
int GetReaderFormatCount ( ) const

Returns the number of file formats that can be imported.

Returns:
The number of importable formats.
Examples:
UI_Examples/Common/ImportExport.cxx, and UI_Examples/SceneTreeView/SDK_Utility.cxx.
int GetWriterFormatCount ( ) const

Returns the number of file formats that can be exported.

Returns:
The number of exportable formats.
Remarks:
Multiple identifiers for the same format count as different file formats. For example, eFBX_BINARY, eFBX_ASCII and eFBX_ENCRYPTED are counted as three separate file formats.
Examples:
Common/Common.cxx, ExportDocument/main.cxx, UI_Examples/Common/ImportExport.cxx, and UI_Examples/CubeCreator/SDK_Utility.cxx.
const char* GetReaderFormatDescription ( int  pFileFormat ) const

Returns the description of an importable file format.

Parameters:
pFileFormat The file format identifier.
Returns:
A pointer to the character representation of the description.
Examples:
UI_Examples/SceneTreeView/SDK_Utility.cxx.
const char* GetWriterFormatDescription ( int  pFileFormat ) const

Returns the description of an exportable file format.

Parameters:
pFileFormat The file format identifier.
Returns:
A pointer to the character representation of the description.
Examples:
Common/Common.cxx, ExportDocument/main.cxx, and UI_Examples/CubeCreator/SDK_Utility.cxx.
const char* GetReaderFormatExtension ( int  pFileFormat ) const

Returns an importable file format's file extension.

Parameters:
pFileFormat The file format identifier.
Returns:
A pointer to the character representation of the file extension.
Examples:
UI_Examples/SceneTreeView/SDK_Utility.cxx.
const char* GetWriterFormatExtension ( int  pFileFormat ) const

Returns an exportable file format's file extension.

Parameters:
pFileFormat The file format identifier.
Returns:
A pointer to the character representation of the file extension.
char const* const GetWritableVersions ( int  pFileFormat ) const

Returns a list of the writable file format versions.

Parameters:
pFileFormat The file format identifier.
Returns:
A pointer to a list of user-readable strings that represent the versions.
bool DetectReaderFileFormat ( const char *  pFileName,
int &  pFileFormat 
) const

Detects the import (reader) file format specified for the file.

Parameters:
pFileName The file whose file format is to be determined.
pFileFormat It equals the file format identifier if this function returns true. If this function returns false, it is unmodified.
Returns:
True if the file has been determined successfully, returns false otherwise.
Remarks:
This function attempts to detect the specified file's file format based on the file extension and, in some cases, its content. This function may not be able to determine all file formats. Use this function as a helper before calling SetFileFormat().
Note:
The file must be unlocked (already open) for this function to succeed.
bool DetectWriterFileFormat ( const char *  pFileName,
int &  pFileFormat 
) const

Detects the export (writer) file format specified for the file.

Parameters:
pFileName The file whose file format is to be determined.
pFileFormat It equals the file format identifier if this function returns true. If this function returns false, it is unmodified.
Returns:
True if the file has been determined successfully, returns false otherwise.
Remarks:
This function attempts to detect the specified file's file format based on the file extension and, in some cases, its content. This function may not be able to determine all file formats. Use this function as a helper before calling SetFileFormat().
Note:
The file must be unlocked (already open) for this function to succeed.
int GetNativeReaderFormat ( )

Returns the file format of the native Reader.

Returns:
The ID of the native Reader's file format.
int GetNativeWriterFormat ( )

Returns the file format of the native Writer.

Returns:
The ID of the native Writer's file format.
Examples:
Common/Common.cxx, ExportDocument/main.cxx, UI_Examples/Common/ImportExport.cxx, and UI_Examples/CubeCreator/SDK_Utility.cxx.
void FillIOSettingsForReadersRegistered ( FbxIOSettings pIOS )

Fills the IO Settings for all registered readers.

Parameters:
pIOS The IO settings to be filled.
void FillIOSettingsForWritersRegistered ( FbxIOSettings pIOS )

Fills the IO Settings for all registered writers.

Parameters:
pIOS The IO settings to be filled.

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