Classes | Public Member Functions

KFbxIOPluginRegistry 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.


Search for all occurrences

Detailed 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 KFbxSdkManager has a unique KFbxIOPluginRegistry. To get an instance of this class:

 KFbxIOPluginRegistry* registry = manager->GetIOPluginRegistry();
See also:
KFbxSdkManager::GetIOPluginRegistry()

Definition at line 46 of file kfbxiopluginregistry.h.

#include <kfbxiopluginregistry.h>

List of all members.

Classes

struct   ReaderPluginEntry
struct   WriterPluginEntry

Public Member Functions

  KFbxIOPluginRegistry ()
  Constructor.
virtual  ~KFbxIOPluginRegistry ()
  Destructor.
void  RegisterReader (char const *pPluginPath, int &pFirstPluginID, int &pRegisteredCount)
  Registers a Reader from a plug-in path.
void  RegisterReader (KFbxReader::CreateFuncType pCreateF, KFbxReader::GetInfoFuncType pInfoF, int &pFirstPluginID, int &pRegisteredCount, KFbxReader::IOSettingsFillerFuncType pIOSettingsFillerF=NULL)
  Registers a Reader.
void  RegisterWriter (char const *pPluginPath, int &pFirstPluginID, int &pRegisteredCount)
  Registers a Writer from a plug-in path.
void  RegisterWriter (KFbxWriter::CreateFuncType pCreateF, KFbxWriter::GetInfoFuncType pInfoF, int &pFirstPluginID, int &pRegisteredCount, KFbxWriter::IOSettingsFillerFuncType pIOSettingsFillerF=NULL)
  Registers a Writer.
KFbxReader CreateReader (KFbxSdkManager &pManager, KFbxImporter &pImporter, int pPluginID) const
  Creates a Reader.
KFbxWriter CreateWriter (KFbxSdkManager &pManager, KFbxExporter &pExporter, int pPluginID) const
  Creates a Writer.
int  FindReaderIDByExtension (char const *pExt) const
  Searches for the Reader ID by the file extension.
int  FindWriterIDByExtension (char const *pExt) const
  Searches for the Writer ID by the file extension.
int  FindReaderIDByDescription (char const *pDesc) const
  Searches for the Reader ID by the file format description.
int  FindWriterIDByDescription (char const *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.
char const *  GetReaderFormatDescription (int pFileFormat) const
  Returns the description of an importable file format.
char const *  GetWriterFormatDescription (int pFileFormat) const
  Returns the description of an exportable file format.
char const *  GetReaderFormatExtension (int pFileFormat) const
  Returns an importable file format's file extension.
char const *  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 (KFbxIOSettings &pIOS)
  Fills the IO Settings for all registered readers.
void  FillIOSettingsForWritersRegistered (KFbxIOSettings &pIOS)
  Fills the IO Settings for all registered writers.

Constructor & Destructor Documentation

Constructor.

virtual ~KFbxIOPluginRegistry ( ) [virtual]

Destructor.


Member Function Documentation

void RegisterReader ( char const *  pPluginPath,
int &  pFirstPluginID,
int &  pRegisteredCount 
)

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.
Examples:
ExportScene05/main.cxx.
void RegisterReader ( KFbxReader::CreateFuncType  pCreateF,
KFbxReader::GetInfoFuncType  pInfoF,
int &  pFirstPluginID,
int &  pRegisteredCount,
KFbxReader::IOSettingsFillerFuncType  pIOSettingsFillerF = NULL 
)

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.
void RegisterWriter ( char const *  pPluginPath,
int &  pFirstPluginID,
int &  pRegisteredCount 
)

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.
Examples:
ExportScene05/main.cxx.
void RegisterWriter ( KFbxWriter::CreateFuncType  pCreateF,
KFbxWriter::GetInfoFuncType  pInfoF,
int &  pFirstPluginID,
int &  pRegisteredCount,
KFbxWriter::IOSettingsFillerFuncType  pIOSettingsFillerF = NULL 
)

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.
KFbxReader* CreateReader ( KFbxSdkManager pManager,
KFbxImporter 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.
KFbxWriter* CreateWriter ( KFbxSdkManager pManager,
KFbxExporter 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 ( char const *  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 ( char const *  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 ( char const *  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
Examples:
ViewScene/main.cxx.
int FindWriterIDByDescription ( char const *  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, UIExamples/Common/ImportExport.cxx, and UIExamples/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:
UIExamples/Common/ImportExport.cxx, and UIExamples/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, UIExamples/Common/ImportExport.cxx, and UIExamples/CubeCreator/SDK_Utility.cxx.
char const* 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:
UIExamples/SceneTreeView/SDK_Utility.cxx.
char const* 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 UIExamples/CubeCreator/SDK_Utility.cxx.
char const* 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:
UIExamples/SceneTreeView/SDK_Utility.cxx.
char const* 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.
Examples:
ViewScene/main.cxx.
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, UIExamples/Common/ImportExport.cxx, and UIExamples/CubeCreator/SDK_Utility.cxx.
void FillIOSettingsForReadersRegistered ( KFbxIOSettings pIOS )

Fills the IO Settings for all registered readers.

Parameters:
pIOS The IO settings to be filled.
void FillIOSettingsForWritersRegistered ( KFbxIOSettings 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:

KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry
KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry KFbxIOPluginRegistry