Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00013 #ifndef _FBXSDK_FILEIO_FBX_WRITER_FBX7_H_
00014 #define _FBXSDK_FILEIO_FBX_WRITER_FBX7_H_
00015
00016 #include <fbxsdk.h>
00017
00018 #include <fbxsdk/fbxsdk_nsbegin.h>
00019
00020 struct FbxWriterFbx7_Impl;
00021
00022 class FbxWriterFbx7 : public FbxWriter
00023 {
00024 public:
00025 typedef enum
00026 {
00027 eASCII,
00028 eBINARY,
00029 eENCRYPTED
00030 } EExportMode;
00031
00032 FbxWriterFbx7(FbxManager& pManager, FbxExporter& pExporter, int pID, FbxStatus& pStatus);
00033 FbxWriterFbx7(FbxManager& pManager, FbxExporter& pExporter, EExportMode pMode, int pID, FbxStatus& pStatus);
00034 virtual ~FbxWriterFbx7();
00035
00036 virtual bool FileCreate(char* pFileName);
00037 virtual bool FileCreate(FbxStream* pStream, void* pStreamData);
00038 virtual bool FileClose();
00039 virtual bool IsFileOpen();
00040
00041 virtual void GetWriteOptions();
00042 virtual bool Write(FbxDocument* pDocument);
00043 virtual bool PreprocessScene(FbxScene &pScene);
00044 virtual bool PostprocessScene(FbxScene &pScene);
00045 virtual bool Write(FbxDocument* pDocument, FbxIO* pFbx);
00046 virtual void PluginWriteParameters(FbxObject& pParams);
00047 virtual void SetProgressHandler(FbxProgress *pProgress);
00048
00049 void SetExportMode(EExportMode pMode);
00050
00051 virtual bool SupportsStreams() const { return true; }
00052
00053 private:
00054
00055 FbxWriterFbx7(const FbxWriterFbx7&);
00056 FbxWriterFbx7& operator=(const FbxWriterFbx7&);
00057
00058 struct ModifiedPropertyInfo{ FbxObject* mObj; FbxString mPropName; };
00059 FbxArray<ModifiedPropertyInfo*> mModifiedProperties;
00060 void StoreUnsupportedProperty(FbxObject* pObject, FbxProperty& pProperty);
00061
00062 private:
00063 FbxWriterFbx7_Impl* mImpl;
00064 };
00065
00066 #include <fbxsdk/fbxsdk_nsend.h>
00067
00068 #endif