fbxsdk/fileio/fbxiopluginregistry.h Source File
Go to the documentation of this file.
13 #ifndef _FBXSDK_FILEIO_IO_PLUGIN_REGISTRY_H_
14 #define _FBXSDK_FILEIO_IO_PLUGIN_REGISTRY_H_
49 #ifndef FBXSDK_ENV_WINSTORE
56 void RegisterReader(
const char* pPluginPath,
58 int& pRegisteredCount,
59 bool pOverride =
false);
73 int& pRegisteredCount,
75 bool pOverride =
false);
77 #ifndef FBXSDK_ENV_WINSTORE
84 void RegisterWriter(
const char* pPluginPath,
86 int& pRegisteredCount,
87 bool pOverride =
false);
101 int& pRegisteredCount,
103 bool pOverride =
false);
112 int pPluginID)
const;
121 int pPluginID)
const;
127 int FindReaderIDByExtension(
const char* pExt)
const;
133 int FindWriterIDByExtension(
const char* pExt)
const;
139 int FindReaderIDByDescription(
const char* pDesc)
const;
145 int FindWriterIDByDescription(
const char* pDesc)
const;
151 bool ReaderIsFBX(
int pFileFormat)
const;
157 bool WriterIsFBX(
int pFileFormat)
const;
163 bool ReaderIsGenuine(
int pFileFormat)
const;
169 bool WriterIsGenuine(
int pFileFormat)
const;
174 int GetReaderFormatCount()
const;
182 int GetWriterFormatCount()
const;
188 const char* GetReaderFormatDescription(
int pFileFormat)
const;
194 const char* GetWriterFormatDescription(
int pFileFormat)
const;
200 const char* GetReaderFormatExtension(
int pFileFormat)
const;
206 const char* GetWriterFormatExtension(
int pFileFormat)
const;
212 char const*
const* GetWritableVersions(
int pFileFormat)
const;
224 bool DetectReaderFileFormat(
const char* pFileName,
int& pFileFormat)
const;
236 bool DetectWriterFileFormat(
const char* pFileName,
int& pFileFormat)
const;
241 int GetNativeReaderFormat();
246 int GetNativeWriterFormat();
251 void FillIOSettingsForReadersRegistered(
FbxIOSettings & pIOS);
256 void FillIOSettingsForWritersRegistered(
FbxIOSettings & pIOS);
262 #ifndef DOXYGEN_SHOULD_SKIP_THIS
264 void RegisterInternalIOPlugins();
266 struct ReaderPluginEntry
268 ReaderPluginEntry(
const char* pExtension,
const char* pDescription,
FbxReader::CreateFuncType pCreatorFunction,
int pBaseID,
271 const char* mExtension;
272 const char* mDescription;
277 bool mIsInternalPlugin;
280 struct WriterPluginEntry
282 WriterPluginEntry(
const char* pExtension,
const char* pDescription,
char const*
const* pVersions,
FbxWriter::CreateFuncType pCreatorFunction,
int pBaseID,
285 const char* mExtension;
286 const char* mDescription;
287 char const*
const* mVersions;
292 bool mIsInternalPlugin;
297 int mNativeReaderFormat;
298 int mNativeWriterFormat;
299 bool mInternalPluginMode;
This class serves as the registrar for file formats.
FbxReader *(* CreateFuncType)(FbxManager &pManager, FbxImporter &pImporter, int pSubID, int pPluginID)
FBX SDK environment definition.
Base class of other readers used internally.
void(* IOSettingsFillerFuncType)(FbxIOSettings &pIOS)
Helper typedef for passing FbxIOSettings creator function as argument (used internally).
FbxIOSettings is a collection of properties, arranged as a tree, that can be used by FBX file readers...
FbxWriter *(* CreateFuncType)(FbxManager &pManager, FbxExporter &pExporter, int pSubID, int pPluginID)
Helper typedef for passing FbxWriter creator function as argument (used internally).
void *(* GetInfoFuncType)(EInfoRequest pRequest, int pReaderTypeId)
Class to export SDK objects into an FBX file.
Base class of other writers used internally.
void(* IOSettingsFillerFuncType)(FbxIOSettings &pIOS)
void *(* GetInfoFuncType)(EInfoRequest pRequest, int pWriterTypeId)
Helper typedef for passing EInfoRequest function as argument (used internally).
Class for array of basic elements such as pointers and basic types.
Class to import an FBX file into SDK objects.