package bar

interface Openable

オープン可能なインタフェースの記述例を提供します。

Method Summary

 int Openable_readfn(void * cookie, char * data, int size)
          ファイルからデータを読み込みます。
 int Openable_writefn(void * cookie, const char * data, int size)
          ファイルにデータを書き込みます。
 fpos_t Openable_seekfn(void * cookie, fpos_t offset, int whence)
          ファイルのオフセットを変更します。
 int Openable_closefn(void * cookie)
          ファイルをクローズします。

Method Detail

Openable_readfn

int Openable_readfn( void * cookie,
char * data,
int size)
ファイルからデータを読み込みます。
Parameters:
cookie - このインスタンスのポインタ
data - 読み込むデータを格納する領域のポインタ
size - dataのサイズ
Returns:
成功した場合は実際に読み込んだデータのサイズを返します。ファイルの最後の場合は0を返します。そうでなければ−1を返します。

Openable_writefn

int Openable_writefn( void * cookie,
const char * data,
int size)
ファイルにデータを書き込みます。
Parameters:
cookie - このインスタンスのポインタ
data - 書き込むデータを格納した領域のポインタ
size - dataのサイズ
Returns:
成功した場合は書き込んだデータのサイズを返します。そうでなければ−1を返します。

Openable_seekfn

fpos_t Openable_seekfn( void * cookie,
fpos_t offset,
int whence)
ファイルのオフセットを変更します。

whenceの値にはfoo_Whence_SETfoo_Whence_SETfoo_Whence_ENDのいずれかを指定します。

Parameters:
cookie - このインスタンスのポインタ
offset - ファイルのオフセット
whence - offsetの起点
Returns:
成功した場合はファイルの先頭からのオフセットを返します。そうでなければ−1を返します。

Openable_closefn

int Openable_closefn( void * cookie)
ファイルをクローズします。
Parameters:
cookie - このインスタンスのポインタ
Returns:
成功した場合は0を返します。そうでなければ−1を返します。