Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00013 #ifndef _FBXSDK_FILEIO_IO_BASE_H_
00014 #define _FBXSDK_FILEIO_IO_BASE_H_
00015
00016 #include <fbxsdk/fbxsdk_def.h>
00017
00018 #include <fbxsdk/core/base/fbxerror.h>
00019 #include <fbxsdk/core/base/fbxstring.h>
00020
00021 #include <fbxsdk/core/fbxobject.h>
00022
00023 #include <fbxsdk/fbxsdk_nsbegin.h>
00024
00025 class FbxManager;
00026
00027 #define FBXSDK_IO_END_NODE_STR "_End"
00028
00032 class FBXSDK_DLL FbxIOBase : public FbxObject
00033 {
00034 FBXSDK_OBJECT_DECLARE(FbxIOBase, FbxObject);
00035
00036 public:
00042 virtual bool Initialize(const char *pFileName);
00043
00047 virtual FbxString GetFileName();
00048
00053
00057 FbxError& GetError();
00058
00072 enum EErrorCode
00073 {
00074 eFileCorrupted,
00075 eFileVersionNotSupportedYet,
00076 eFileVersionNotSupportedAnymore,
00077 eFileNotOpened,
00078 eFileNotCreated,
00079 eOutOfSpace,
00080 eUninitializedFileName,
00081 eUnknownError,
00082 eIndexOutOfRange,
00083 ePasswordError,
00084 eEmbeddedOutOfSpace,
00085 eErrorCount
00086 };
00087
00091 EErrorCode GetLastErrorID() const;
00092
00096 const char* GetLastErrorString() const;
00097
00101 void GetMessage(FbxString& pMessage) const;
00102
00104
00106
00107
00108
00109
00110
00111
00113
00114 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00115
00116 protected:
00117
00118 FbxIOBase(FbxManager& pManager,char const* pName);
00119
00120 int DetectReaderFileFormat(const char *pFileName);
00121 int DetectWriterFileFormat(const char *pFileName);
00122
00123 FbxError mError;
00124 FbxString mFilename;
00125 FbxManager* mManager;
00126 FbxString mMessage;
00127
00128 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00129
00130 };
00131
00132 #include <fbxsdk/fbxsdk_nsend.h>
00133
00134 #endif