00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef __TGA_H__
00012 #define __TGA_H__
00013
00014 #include "Bitmap/BitmapDll.h"
00015 #include "Bitmap/Bitmap.h"
00016
00017
00018 typedef enum _KFILETGATYPE
00019 {
00020 KFTT_NODATA = 0,
00021 KFTT_COLORMAP = 1,
00022 KFTT_TRUECOLOR = 2,
00023 KFTT_BLACKWHITE = 3,
00024 KFTT_RLECOLORMAP = 9,
00025 KFTT_RLETRUECOLOR = 10,
00026 KFTT_RLEBLACKWHITE = 11
00027 };
00028
00029
00030 #pragma pack( push, 1 )
00031 class BITMAP_API KTgaHeader
00032 {
00033 public:
00034 u8 m_IdLength;
00035 u8 m_ColorMapType;
00036 u8 m_ImageType;
00037
00038 u16 m_CMFirstEntry;
00039 u16 m_CMFLength;
00040 u8 m_CMEntrySize;
00041
00042
00043 u16 m_ISXOrigin;
00044 u16 m_ISYOrigin;
00045 u16 m_ISWidth;
00046 u16 m_ISHeight;
00047 u8 m_ISBpp;
00048 u8 m_ISDesc;
00049 };
00050 #pragma pack( pop )
00051
00052
00053 class BITMAP_API KTga : public KBitmap
00054 {
00055 protected:
00056 KTgaHeader m_Header;
00057 bool m_OriginTop;
00058 bool m_OriginRight;
00059
00060 public:
00061 KTga();
00062 virtual ~KTga();
00063
00064 s32 LoadTGA( const char* pFileName );
00065 };
00066
00067 #endif __TGA_H__