myio_byte_array.h

最終更新:2010/1/20

myio_byte_array.h

001: /*
002:  * バイト配列をソースとする入力ストリーム
003:  */
004: 
005: #ifndef _MYIO_BYTE_ARRAY_H_
006: 
007: #ifndef _MYIO_H_
008: #include "myio.h"
009: #endif
010: 
011: #define MYIO_METHOD_NAME_BA "BYTE_ARRAY_STREAM"
012: 
013: typedef struct myio_ba_ctx {
014:   char *ba;
015:   int size;
016:   int pos;
017: } myio_ba_ctx;
018: 
019: /*
020:  * size バイト分のデータを読み出す関数。
021:  * 返り値は buf に読み出したバイト数。
022:  * エラー時には -1 が返る。
023:  */
024: 
025: int myio_read_ba (
026:   MYIO *in
027:   , char *buf
028:   , int size
029: );
030: 
031: MYIO *MYIO_ba_new (
032:   char *ba               /* バイト配列 */
033:   , int size             /* バイト配列のサイズ */
034:   , void *alloc_func     /* メモリアロケーションの関数 */
035:   , void *alloc_func_ctx /* メモリアロケーションの関数のコンテクストデータ */
036: );
037: 
038: #endif /* _MYIO_BYTE_ARRAY_H_ */
Copyright (C) KAKU PROJECT (2009)KAKU PROJECT (2009)