fbxthumbnail.h

Go to the documentation of this file.
00001 /****************************************************************************************
00002  
00003    Copyright (C) 2013 Autodesk, Inc.
00004    All rights reserved.
00005  
00006    Use of this software is subject to the terms of the Autodesk license agreement
00007    provided at the time of installation or download, or which otherwise accompanies
00008    this software in either electronic or hard copy form.
00009  
00010 ****************************************************************************************/
00011 
00013 #ifndef _FBXSDK_SCENE_THUMBNAIL_H_
00014 #define _FBXSDK_SCENE_THUMBNAIL_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/fbxobject.h>
00019 
00020 #include <fbxsdk/fbxsdk_nsbegin.h>
00021 
00022 class FbxThumbnailMembers;
00023 
00027 class FBXSDK_DLL FbxThumbnail : public FbxObject
00028 {
00029     FBXSDK_OBJECT_DECLARE(FbxThumbnail, FbxObject);
00030 
00031 public:
00036 
00038     FbxPropertyT<FbxInt> CustomHeight;
00039 
00041     FbxPropertyT<FbxInt> CustomWidth;
00042 
00047     enum EDataFormat
00048     {
00049         eRGB_24, // 3 components
00050         eRGBA_32 // 4 components
00051     };
00052 
00056     void SetDataFormat(EDataFormat pDataFormat);
00057 
00061     EDataFormat GetDataFormat() const;
00062 
00063 
00070     enum EImageSize
00071     {
00072         eNotSet = 0,
00073         e64x64 = 64,
00074         e128x128 = 128,
00075         eCustomSize = -1
00076     };
00077 
00081     void SetSize(EImageSize pImageSize);    
00082 
00086     EImageSize GetSize() const;
00087 
00091     unsigned long GetSizeInBytes() const;
00092 
00093 
00095 
00100 
00115     bool SetThumbnailImage(const FbxUChar* pImage);
00116 
00121     FbxUChar* GetThumbnailImage() const;
00122 
00124 
00125 /*****************************************************************************************************************************
00126 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
00127 *****************************************************************************************************************************/
00128 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00129     virtual FbxObject&  Copy(const FbxObject& pObject);
00130 
00131 protected:
00132     virtual void Construct(const FbxThumbnail* pFrom);
00133     virtual void ConstructProperties(bool pForceSet);
00134     virtual void Destruct(bool pRecursive);
00135 
00136     FbxThumbnailMembers* mMembers;
00137 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
00138 };
00139 
00140 #include <fbxsdk/fbxsdk_nsend.h>
00141 
00142 #endif /* _FBXSDK_SCENE_THUMBNAIL_H_ */