Main Page | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dkcStream.h File Reference

#include <stdio.h>
#include "dkcOSIndependent.h"
#include "dkcDefined.h"

Include dependency graph for dkcStream.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.

Classes

struct  dkc_Stream
 汎用型ストリーム More...


Typedefs

typedef dkc_Stream DKC_STREAM
 汎用型ストリーム


Enumerations

enum  edkcStream {
  edkcStreamSeekCurrent = SEEK_CUR, edkcStreamSeekEnd = SEEK_END, edkcStreamSeekSet = SEEK_SET, edkcStreamInitBuffer = 0,
  edkcStreamInitFile
}

Functions

DKC_EXTERN DKC_STREAM *WINAPI dkcAllocStream (int flag, const char *filename, const char *mode)
 ストリーム領域を得る。

DKC_EXTERN int WINAPI dkcFreeStream (DKC_STREAM **ptr)
 dkcAllocNewStream()で確保したストリーム領域を開放する

DKC_EXTERN int WINAPI dkcStreamSeek (DKC_STREAM *ptr, int offset, int origin)
 streamをシークする。fseekみたいなもの

DKC_EXTERN int WINAPI dkcStreamRead (DKC_STREAM *ptr, void *buffer, size_t size, size_t *readsize)
 streamをリードする。freadみたいなもの

DKC_EXTERN int WINAPI dkcStreamWrite (DKC_STREAM *ptr, const void *buffer, size_t size)
 streamをライトする。fwriteみたいなもの

DKC_EXTERN int WINAPI dkcStreamClear (DKC_STREAM *ptr)
 stream内をmemset(0)する。(seek位置も最初に戻される。


Detailed Description

Note:
dkcStreamSerializeのシリアライズ済みファイルデータ構造
DKC_STREAM構造体 BYTE DKC_STREAM::mSize個分。

Typedef Documentation

typedef struct dkc_Stream DKC_STREAM
 

汎用型ストリーム


Enumeration Type Documentation

enum edkcStream
 

Enumeration values:
edkcStreamSeekCurrent  今の位置からシーク
edkcStreamSeekEnd  最後の位置からシーク
edkcStreamSeekSet  最初の位置からシーク
edkcStreamInitBuffer  バッファとして初期化
edkcStreamInitFile  バッファはfopenで初期化


Function Documentation

DKC_EXTERN DKC_STREAM* WINAPI dkcAllocStream int  flag,
const char *  filename,
const char *  mode
 

ストリーム領域を得る。

Parameters:
flag[in] edkcStreamにある、StreamInit系のものを渡す
size[in] ストリームの初期化時のサイズ
filename[in] edkcStreamInitFileをflagに渡した場合、その保存するファイルの名前 flagにedkcStreamInitFile以外の値を渡した場合はNULLでOK
mode[in] fopenのモード flagにedkcStreamInitFile以外の値を渡した場合はNULLでOK
Returns:
DKC_STREAM *のストリームデータ。

DKC_EXTERN int WINAPI dkcFreeStream DKC_STREAM **  ptr  ) 
 

dkcAllocNewStream()で確保したストリーム領域を開放する

Parameters:
ptr[in][out] 削除するストリームデータ。入れたデータはNULLになる。
Note:

DKC_EXTERN int WINAPI dkcStreamClear DKC_STREAM ptr  ) 
 

stream内をmemset(0)する。(seek位置も最初に戻される。

DKC_EXTERN int WINAPI dkcStreamRead DKC_STREAM ptr,
void *  buffer,
size_t  size,
size_t *  readsize
 

streamをリードする。freadみたいなもの

Parameters:
readsize[out] 実際に読んだサイズを返す。NULLを渡してもOK.
Note:
指定したサイズ(size)よりもストリームバッファのサイズが小さかった場合 readsizeに実際に読んだサイズを入れます。

DKC_EXTERN int WINAPI dkcStreamSeek DKC_STREAM ptr,
int  offset,
int  origin
 

streamをシークする。fseekみたいなもの

DKC_EXTERN int WINAPI dkcStreamWrite DKC_STREAM ptr,
const void *  buffer,
size_t  size
 

streamをライトする。fwriteみたいなもの

Note:
内部ストリームバッファは動的拡張です。気にせずどんどんぶち込みましょう。 C言語版のSTLのstd::vectorみたいなものですね。(といいますか、車輪の再開発してるし・・・。


Generated on Mon Apr 26 19:37:16 2004 for dkutil_c by doxygen 1.3.6