00001
00004 #ifndef FBXFILESDK_KFBXPLUGINS_KFBXTHUMBNAIL_H
00005 #define FBXFILESDK_KFBXPLUGINS_KFBXTHUMBNAIL_H
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042 #include <fbxfilesdk/components/kbaselib/kaydaradef_h.h>
00043 #include <fbxfilesdk/components/kbaselib/kaydara.h>
00044 #include <fbxfilesdk/kfbxplugins/kfbxobject.h>
00045
00046 #include <fbxfilesdk/fbxfilesdk_nsbegin.h>
00047
00048 class KFbxThumbnailMembers;
00049 class KFbxSdkManager;
00050
00054 class KFBX_DLL KFbxThumbnail : public KFbxObject
00055 {
00056 KFBXOBJECT_DECLARE(KFbxThumbnail,KFbxObject);
00057
00058 public:
00059
00064
00066 KFbxTypedProperty<fbxInteger1> CustomHeight;
00067
00069 KFbxTypedProperty<fbxInteger1> CustomWidth;
00070
00075 typedef enum
00076 {
00077 eRGB_24,
00078 eRGBA_32
00079 } EDataFormat;
00080
00084 void SetDataFormat(EDataFormat pDataFormat);
00085
00089 EDataFormat GetDataFormat() const;
00090
00091
00098 typedef enum
00099 {
00100 eNOT_SET = 0,
00101 e64x64 = 64,
00102 e128x128 = 128,
00103 eCUSTOM_SIZE = -1
00104 } EImageSize;
00105
00109 void SetSize(EImageSize pImageSize);
00110
00114 EImageSize GetSize() const;
00115
00119 unsigned long GetSizeInBytes() const;
00120
00121
00123
00128
00143 bool SetThumbnailImage(const kUByte* pImage);
00144
00149 kUByte* GetThumbnailImage() const;
00150
00152
00153
00155
00156
00157
00158
00159
00160
00162 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00163
00164 protected:
00165
00167 KFbxThumbnail(KFbxSdkManager& pManager, char const* pName);
00168 ~KFbxThumbnail();
00169
00170 virtual KFbxObject* Clone(KFbxObject* pContainer, KFbxObject::ECloneType pCloneType) const;
00171 virtual void Construct (const KFbxThumbnail* pFrom);
00172 virtual bool ConstructProperties( bool pForceSet );
00173 virtual void Destruct (bool pRecursive, bool pDependents);
00174 virtual KFbxThumbnail& operator = (KFbxThumbnail const& pSrc);
00175
00176
00177 KFbxSdkManager* mManager;
00178 KFbxThumbnailMembers* mMembers;
00179
00180 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00181 };
00182
00183 #include <fbxfilesdk/fbxfilesdk_nsend.h>
00184
00185 #endif // FBXFILESDK_KFBXPLUGINS_KFBXTHUMBNAIL_H
00186