メインページ | 構成 | ファイル一覧 | 構成メンバ | ファイルメンバ | 関連ページ

dkcRLE.h

説明を見る。
00001 
00025 #ifndef DKUTIL_C_RLE_H
00026 #define DKUTIL_C_RLE_H
00027 
00028 
00029 #include "dkcOSIndependent.h"
00030 #include "dkcMemoryStream.h"
00031 
00032 #define dkcdRLE_EOF_ID 0x01
00033 
00034 #define dkcdRLE_NOCOMPRESS_ID 0x00
00035 
00036 #define dkcdRLE_SIGNATURE 'RLE\0'
00037 
00038 typedef struct dkc_RLE
00039 {
00041     BYTE mTemp[256];
00043     //unsigned char mValidFlag[256];
00044 }DKC_RLE;
00045 
00046 
00047 
00048 typedef struct dkc_RLE_Header{
00050     unsigned long mSignature;
00052     USHORT mOriginSize;
00054     USHORT mCompressedSize;
00055 
00057     BYTE mEOF;
00058 
00060     BYTE mABS;
00061 }DKC_RLE_HEADER;
00062 
00063 typedef struct dkc_RLE_Comp{
00064     BYTE length;
00065     BYTE data;
00066 }DKC_RLE_COMP;
00067 
00068 typedef struct dkc_RLE_NoComp{
00069     BYTE sig;
00070     USHORT length;
00071 }DKC_RLE_NOCOMP;
00072 
00073 
00074 DKC_EXTERN DKC_RLE *WINAPI dkcAllocRLE();
00075 
00076 DKC_EXTERN int WINAPI dkcFreeRLE(DKC_RLE **);
00077 
00078 
00079 
00080 
00101 DKC_EXTERN int WINAPI dkcRLEEncode(DKC_RLE *ptr,DKC_MEMORYSTREAM *pms,DKC_RLE_HEADER *ph,
00102                                                                      BYTE *dest,size_t dsize,const BYTE *src,USHORT ssize,
00103     size_t CloseProcessSize,ULONG sig,BYTE aEOF_ID,BYTE aABS_ID);
00113 DKC_EXTERN int WINAPI dkcRLEDecode(DKC_RLE *p,DKC_MEMORYSTREAM *pms,
00114                                                 const DKC_RLE_HEADER *ph,const BYTE *src,USHORT ssize,
00115                                                 ULONG sig);
00116 
00117 typedef struct dkc_RLEPackBits_Header{
00119     size_t mOriginSize;
00121     size_t mCompressedSize;
00123     int mCount;
00124 }DKC_RLE_PACKBITS_HEADER;
00125 
00126 
00127 DKC_EXTERN int WINAPI dkcRLEPackBitsEncode(DKC_RLE_PACKBITS_HEADER *p,
00128                                                                                      BYTE *dest,size_t dsize,
00129                                                                                         const BYTE *src,size_t ssize,BYTE count);
00130 
00131 DKC_EXTERN int WINAPI dkcRLEPackBitsDecode(DKC_RLE_PACKBITS_HEADER *p,
00132                                                                                      BYTE *dest,size_t dsize,
00133                                                                 const BYTE *src,size_t ssize);
00134 
00135 #if !defined(  DKUTIL_C_RLE_C ) &&  defined(USE_DKC_INDEPENDENT_INCLUDE)
00136 #   include "dkcRLE.c"
00137 #endif
00138 
00139 #endif //end of include once

dkutil_cに対してTue Oct 19 03:34:55 2004に生成されました。 doxygen 1.3.6