This reference page is linked to from the following overview topics: Customizing the FBX SDK, Customizing File Formats, Customizing File Formats with FBX SDK I/O Plug-ins.
#include <fbxwriter.h>
Base class of other writers used internally.
This class provides the interfaces for writing files.
The role of the writer is to effectively "write" specific file data vs the role of the exporter is to select a specific writer and launch the writing of a file through that writer.
ex:
A SDK user should - normally - not use this class, except if a custom writer must be created for plug-in extension, then FbxWriter must be the base class for the new custom writer in that particular situation.
MyOwnWriterReader/MyOwnWriter.cxx, MyOwnWriterReader/MyOwnWriter.h, MyOwnWriterReader/MyOwnWriterReader.cxx, and MyOwnWriterReader/MyOwnWriterReader.h.
Definition at line 58 of file fbxwriter.h.
Public Types |
|
| enum | EInfoRequest
{ eInfoExtension, eInfoDescriptions, eInfoVersions, eInfoCompatibleDesc, eInfoUILabel, eReserved1 = 0xFBFB } |
| Information type to request. More... |
|
| typedef FbxWriter *(* | CreateFuncType )(FbxManager &pManager, FbxExporter &pExporter, int pSubID, int pPluginID) |
| Helper typedef for passing FbxWriter
creator function as argument (used internally). |
|
| typedef void(* | IOSettingsFillerFuncType )(FbxIOSettings &pIOS) |
| Helper typedef for passing
FbxIOSettings creator function as argument (used internally).
|
|
| typedef void *(* | GetInfoFuncType )(EInfoRequest pRequest, int pWriterTypeId) |
| Helper typedef for passing EInfoRequest
function as argument (used internally). |
|
Public Member Functions |
|
| FbxWriter (FbxManager &pManager, int pID, FbxStatus &pStatus) | |
| Constructor. |
|
| virtual | ~FbxWriter () |
| Destructor. |
|
| virtual bool | FileCreate (char *pFileName)=0 |
| Creates a new file. |
|
| virtual bool | FileCreate (FbxStream *pStream, void *pStreamData) |
| Creates a new file via a stream. |
|
| virtual bool | FileClose ()=0 |
| Closes the file. |
|
| virtual bool | IsFileOpen ()=0 |
| Test if the file is open. |
|
| virtual void | GetWriteOptions ()=0 |
| Setup write options. |
|
| virtual bool | Write (FbxDocument *pDocument)=0 |
| Writes content to the specified file with
given stream options. |
|
| virtual bool | PreprocessScene (FbxScene &pScene)=0 |
| Pre-processes the scene. |
|
| virtual bool | PostprocessScene (FbxScene &pScene)=0 |
| Post-processes the scene. |
|
| virtual void | PluginWriteParameters (FbxObject &pParams) |
| Writes extension plug-ins name, version and
parameters, so that we can remember if a plug-in was used during
export. |
|
| virtual FbxNode * | FindRootNode (FbxScene &pScene) |
| Finds the selected root node in the
specified scene. |
|
| virtual bool | CheckSpaceInNodeNameRecursive (FbxNode *pNode, FbxString &pNodeNameList) |
| Checks if there are spaces in the names of
specified node (and its children nodes), and writes the returned
node's name in the specified string list. |
|
| bool | SetFileExportVersion (FbxString pVersion) |
| Sets the file export version as specified.
|
|
| void | SetRenamingMode (FbxSceneRenamer::ERenamingMode pRenamingMode) |
| Sets the renaming mode as specified.
|
|
| void | SetResamplingRate (double pResamplingRate) |
| Sets the resampling rate as specified.
|
|
| bool | IsGenuine () |
| Test if file format is an internal plug-in .
|
|
| virtual FbxIOSettings * | GetIOSettings () |
| Access to a IOSettings object. |
|
| virtual void | SetIOSettings (FbxIOSettings *pIOSettings) |
| Set the IOSettings pointer to be used for
this writer instance. |
|
| virtual void | SetProgressHandler (FbxProgress *) |
| Pass a progress handler to the writer.
|
|
| virtual bool | SupportsStreams () const |
| Returns true if this writer supports
FbxStream I/O. |
|
Protected Member Functions |
|
| void | PluginsWriteBegin (FbxScene &pScene) |
| Function called by FBX before writing out
the scene (FbxScene).
|
|
| void | PluginsWrite (FbxIO &pFbx, bool pWriteObjectId) |
| Function called by FBX before writing out
any FBX object. |
|
| void | PluginsWriteEnd (FbxScene &pScene) |
| Function called by FBX after writing out the
scene (FbxScene).
|
|
| typedef FbxWriter*(* CreateFuncType)(FbxManager &pManager, FbxExporter &pExporter, int pSubID, int pPluginID) |
Helper typedef for passing FbxWriter creator function as argument (used internally).
Definition at line 85 of file fbxwriter.h.
| typedef void(* IOSettingsFillerFuncType)(FbxIOSettings &pIOS) |
Helper typedef for passing FbxIOSettings creator function as argument (used internally).
Definition at line 88 of file fbxwriter.h.
| typedef void*(* GetInfoFuncType)(EInfoRequest pRequest, int pWriterTypeId) |
Helper typedef for passing EInfoRequest function as argument (used internally).
Definition at line 91 of file fbxwriter.h.
| enum EInfoRequest |
Information type to request.
Definition at line 74 of file fbxwriter.h.
{
eInfoExtension,
eInfoDescriptions,
eInfoVersions,
eInfoCompatibleDesc,
eInfoUILabel,
eReserved1 = 0xFBFB,
};
| FbxWriter | ( | FbxManager & | pManager, |
| int | pID, | ||
| FbxStatus & | pStatus | ||
| ) |
Constructor.
| pManager | The FbxManager Object. |
| pID | Id for current writer. |
| pStatus | The FbxStatus object to hold error codes. |
| virtual ~FbxWriter | ( | ) | [virtual] |
Destructor.
| virtual bool FileCreate | ( | char * | pFileName | ) | [pure virtual] |
Creates a new file.
| pFileName | The name of the newly created file. |
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool FileCreate | ( | FbxStream * | pStream, |
| void * | pStreamData | ||
| ) | [virtual] |
Creates a new file via a stream.
| pStream | The stream to write to. |
| pStreamData | the user-defined stream data to be written. |
Reimplemented in FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool FileClose | ( | ) | [pure virtual] |
Closes the file.
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool IsFileOpen | ( | ) | [pure virtual] |
Test if the file is open.
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual void GetWriteOptions | ( | ) | [pure virtual] |
Setup write options.
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool Write | ( | FbxDocument * | pDocument | ) | [pure virtual] |
Writes content to the specified file with given stream options.
| pDocument | FbxDocument to write file data to. |
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool PreprocessScene | ( | FbxScene & | pScene | ) | [pure virtual] |
Pre-processes the scene.
| pScene | The scene needs to be pre-processed. |
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual bool PostprocessScene | ( | FbxScene & | pScene | ) | [pure virtual] |
Post-processes the scene.
| pScene | The scene needs to be post-processed. |
Implemented in FbxWriterCollada, FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| virtual void PluginWriteParameters | ( | FbxObject & | pParams | ) | [virtual] |
Writes extension plug-ins name, version and parameters, so that we can remember if a plug-in was used during export.
This is especially useful for extension plug-ins that modify the scene and also to warn users during import if an extension plug-in was used that could be missing.
| pParams | The parameters of the extension plug-in. The properties of the objects are used as the parameters of the extension plug-in. |
Reimplemented in FbxWriterFbx6, and FbxWriterFbx7.
Finds the selected root node in the specified scene.
| pScene | The scene in which the selected root node is found. |
NULL if the selected root
node cannot be found.Checks if there are spaces in the names of specified node (and its children nodes), and writes the returned node's name in the specified string list.
| pNode | Specifies the node to check. |
| pNodeNameList | Specifies the string list where the node name that has spaces in it is recorded. |
true If there are no spaces in the name of
specified node (and its children nodes), false If
spaces are found.| bool SetFileExportVersion | ( | FbxString | pVersion | ) |
Sets the file export version as specified.
| pVersion | The specified file export version. |
| void SetRenamingMode | ( | FbxSceneRenamer::ERenamingMode | pRenamingMode | ) | [inline] |
Sets the renaming mode as specified.
| pRenamingMode | The specified renaming mode. |
Definition at line 166 of file fbxwriter.h.
{mRenamingMode = pRenamingMode;}
| void SetResamplingRate | ( | double | pResamplingRate | ) | [inline] |
Sets the resampling rate as specified.
| pResamplingRate | The specified resampling rate. |
Definition at line 171 of file fbxwriter.h.
{mResamplingRate = pResamplingRate;}
| bool IsGenuine | ( | ) |
Test if file format is an internal plug-in .
A non genuine plug-in is a plug-in made by someone external to Autodesk FBX SDK group.
true If the file format is an internal plug-in
,false Otherwise .| virtual FbxIOSettings* GetIOSettings | ( | ) | [virtual] |
Access to a IOSettings object.
NULL if
the object has not been allocated.| virtual void SetIOSettings | ( | FbxIOSettings * | pIOSettings | ) | [virtual] |
Set the IOSettings pointer to be used for this writer instance.
| pIOSettings |
| virtual void SetProgressHandler | ( | FbxProgress * | ) | [inline, virtual] |
Pass a progress handler to the writer.
| pProgress | FbxProgress to store the progress information. |
Reimplemented in FbxWriterFbx6, and FbxWriterFbx7.
Definition at line 193 of file fbxwriter.h.
{}
| virtual bool SupportsStreams | ( | ) | const [virtual] |
Returns true if this writer supports FbxStream I/O.
Default value is false.
Reimplemented in FbxWriterFbx5, FbxWriterFbx6, and FbxWriterFbx7.
| void PluginsWriteBegin | ( | FbxScene & | pScene | ) | [protected] |
Function called by FBX before writing out the scene (FbxScene).
| void PluginsWrite | ( | FbxIO & | pFbx, |
| bool | pWriteObjectId | ||
| ) | [protected] |
Function called by FBX before writing out any FBX object.
| pFbx | File object. |
| pWriteObjectId | Flag to write out object id. |
| void PluginsWriteEnd | ( | FbxScene & | pScene | ) | [protected] |
Function called by FBX after writing out the scene (FbxScene).