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

dkcStream.h

説明を見る。
00001 
00013 #ifndef dkutil_c_Stream__h
00014 #define dkutil_c_Stream__h
00015 
00016 
00017 #include "dkcOSIndependent.h"
00018 #include "dkcMemoryStream.h"
00019 
00020 
00022 typedef struct dkc_Stream{
00023     UINT mMode;
00025     BYTE mChangeEndian;
00027     BYTE mProcessMode;
00028     /*union{
00029         DKC_MEMORYSTREAM *mmem;
00030         FILE *mfp;
00031     }uni;*/
00032     void *mSig;
00033 }DKC_STREAM;
00034 
00035 //#error streamのSEEKにRead用とWrite用をつける。
00036 
00037 
00038 enum edkcStream{
00040     edkcStreamSeekCurrent = SEEK_CUR,
00042     edkcStreamSeekEnd = SEEK_END,
00044     edkcStreamSeekSet = SEEK_SET,
00046     edkcStreamInitMemory = 1,
00048     edkcStreamInitFile = 2,
00050     edkcStreamDefaultEndian = 4,
00052     edkcStreamBigEndian = 8,
00054     edkcStreamLittleEndian = 16,
00056     edkcStreamProcessDefault = 32,
00058     edkcStreamProcessAsOrdered = 64,
00062     edkcStreamWriteErrorWhenEndianChange = 128,
00063 
00064 
00065 };
00066 
00067 
00068 
00079 
00080 DKC_EXTERN DKC_STREAM * WINAPI dkcAllocStream(UINT flag,const void *default_data,size_t size,const char *filename,const char *mode);
00081 
00082 DKC_EXTERN DKC_STREAM *WINAPI dkcAllocStreamMemoryType(UINT flag,const void *default_data,size_t size);
00083 
00084 DKC_EXTERN DKC_STREAM *WINAPI dkcAllocStreamFileType(UINT flag,const char *filename,const char *mode);
00085 
00091 
00092 DKC_EXTERN int WINAPI dkcFreeStream(DKC_STREAM **ptr);
00093 
00094 
00096 DKC_EXTERN int WINAPI dkcStreamSeek(DKC_STREAM *ptr,int offset,int origin);
00097 
00099 DKC_EXTERN long WINAPI dkcStreamTell(DKC_STREAM *ptr);
00112 
00113 DKC_EXTERN int WINAPI dkcStreamRead(DKC_STREAM *ptr,void *buffer,size_t size,size_t *readsize);
00114 
00115 
00116 DKC_EXTERN int WINAPI dkcStreamSwapRead16(DKC_STREAM *ptr,void *buffer,size_t size,UINT flag,size_t *readsize);
00117 
00118 DKC_EXTERN int WINAPI dkcStreamSwapRead32(DKC_STREAM *ptr,void *buffer,size_t size,UINT flag,size_t *readsize);
00119 
00120 DKC_EXTERN int WINAPI dkcStreamSwapRead64(DKC_STREAM *ptr,void *buffer,size_t size,UINT flag,size_t *readsize);
00121 
00122 
00129 
00130 
00131 DKC_EXTERN int WINAPI dkcStreamWrite(DKC_STREAM *ptr,const void *buffer,size_t size);
00132 
00133 DKC_EXTERN int WINAPI dkcStreamWrite16(DKC_STREAM *ptr,const void *buffer,size_t size);
00134 
00135 DKC_EXTERN int WINAPI dkcStreamWrite32(DKC_STREAM *ptr,const void *buffer,size_t size);
00136 
00137 DKC_EXTERN int WINAPI dkcStreamWrite64(DKC_STREAM *ptr,const void *buffer,size_t size);
00138 
00145 typedef int (WINAPI *DKC_STREAM_PROCESS_TYPE)(DKC_STREAM *p,void *buffer,size_t size,void *data);
00146 
00147 
00148 DKC_EXTERN int WINAPI dkcStreamProcess(DKC_STREAM *ptr,void *buffer,size_t size,
00149                                                                              DKC_STREAM_PROCESS_TYPE write_t,void *data);
00150 
00151 DKC_EXTERN int WINAPI dkcStreamProcess16(DKC_STREAM *ptr,void *buffer,size_t size,
00152                                                                              DKC_STREAM_PROCESS_TYPE write_t,void *data);
00153 
00154 DKC_EXTERN int WINAPI dkcStreamProcess32(DKC_STREAM *ptr,void *buffer,size_t size,
00155                                                                              DKC_STREAM_PROCESS_TYPE write_t,void *data);
00156 
00157 DKC_EXTERN int WINAPI dkcStreamProcess64(DKC_STREAM *ptr,void *buffer,size_t size,
00158                                                                              DKC_STREAM_PROCESS_TYPE write_t,void *data);
00159 
00160 
00162 DKC_EXTERN int WINAPI dkcStreamClear(DKC_STREAM *ptr);
00163 
00164 
00165 #endif

dkutil_cに対してSun Jul 18 22:45:22 2004に生成されました。 doxygen 1.3.6