XSIImageData.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _XSIIMAGEDATA_H
00015 #define _XSIIMAGEDATA_H
00016 
00017 #include "Template.h"
00018 #include "XSIImage.h"
00019 
00020 #ifndef _SL_INT_ARRAY_PROXY_EXPORT_
00021 #define _SL_INT_ARRAY_PROXY_EXPORT_
00022 
00023 #endif
00024 
00031 class XSIEXPORT CSLImageData
00032     : public CSLTemplate
00033 {
00034 public:
00035 
00038     typedef CSLArrayProxy<SI_Int, SI_Int, 1> CSLIntArray;
00039 
00041     enum ECompressionType
00042     {
00043         SI_UNCOMPRESSED = 0,    
00044     };
00045 
00051     CSLImageData(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00052 
00054     virtual ~CSLImageData();
00055 
00059     SI_Error Synchronize();
00060 
00064     ETemplateType Type(){ return XSI_IMAGE_DATA; }
00065 
00069     SI_Void SetImageData( CSIBCArray<SI_Int> &in_Data );
00070 
00074     SI_Int GetImageDataCount();
00075 
00079     CSLIntArray* GetImageDataList();
00080 
00084     SI_Int* GetImageDataListPtr();
00085 
00089     ECompressionType GetCompressionType();
00090 
00094     SI_Void SetCompressionType( ECompressionType in_Type );
00095 
00096 private:
00097     CSLEnumProxy<ECompressionType, SI_UNCOMPRESSED> m_CompressionType;
00098     CSLIntArray m_ImageData;
00099 
00100     SI_Void *m_pReserved;
00101 };
00102 
00103 #endif