00001 //*************************************************************************************** 00002 // File supervisor: Crosswalk team 00012 //*************************************************************************************** 00013 00014 //*************************************************************************************** 00015 // Defines 00016 //*************************************************************************************** 00017 #ifndef __CSIILPICFileDriver_H__ 00018 #define __CSIILPICFileDriver_H__ 00019 00020 //*************************************************************************************** 00021 // Includes 00022 //*************************************************************************************** 00023 #include <SIBCPixMap.h> 00024 00025 //*************************************************************************************** 00026 // Typedefs 00027 //*************************************************************************************** 00028 00031 class XSIEXPORT CSIILPICFileDriver : public CSIBCPixMapDriver 00032 { 00033 public: 00034 00035 00038 CSIILPICFileDriver(); 00039 00042 virtual ~CSIILPICFileDriver(); 00043 00049 virtual SI_Bool Supported( CSIBCString &in_Filename ); 00050 00058 virtual SI_Error Load( CSIBCString &in_filename, CSIBCPixMap &in_PixMap ); 00059 00068 virtual SI_Error LoadFromMemory( void *in_pMemoryBlock, SI_Int in_lCount, CSIBCPixMap &in_PixMap ); 00069 00073 static CSIILPICFileDriver *Driver(); 00074 protected: 00075 SI_Error LoadFromMemoryBlockOrFile( CSIBCString &i_Name, SI_Void *i_pMemoryBlock, SI_Int nMemoryBlockSize, CSIBCPixMap &o_Map); // Load the specified image into the preallocated CSIBCPixMap. 00076 00077 private: 00078 00079 00080 }; 00081 00082 00083 00084 00085 #endif // CSIILPICFileDriver