前のページ次のページ上に戻るホーム SophiaFramework UNIVERSE 5.3
SFBPeek
IPeek インターフェースのラッパークラスです。
#include <SFBPeek.h.hpp>
class SFBPeek : public SFBSource;
SFMTYPEDEFWRAPPER(SFBPeek)

継承図

SFBPeek クラスの継承図

バージョン

BREW 2.0 BREW 2.1 BREW 3.1 BREW 4.0

参照

BREW API IPeek

メンバ

パブリック関数
Void Advance( SInt32 advance )
バッファ内のピーク ポインタを前進または後進させます。
VoidPtr Peek( SInt32 wanted , SInt32Ptr available , SInt32Ptr code )
バッファに格納されたデータへのポインタを返し、 オプションとして、バッファ内のデータをさらに読み込むことを試みます。
Void Peekable( SFXCallbackPtr callback )
バッファに格納されていないデータがまだある場合に、 コールバック関数を呼び出します。
static
Bool
Exhausted( SInt32 code ) (SFBSource から継承)
SFBSource、SFBPeek、または SFBGetLine がデータを処理し終えたかどうかを判定します。
SFCError QueryInterface( AEECLSID clsid , VoidHandle handle ) (SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
SFCError QueryInterface( AEECLSID clsid , SFBBaseSmpPtr handle ) (SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
SFBBaseSmp QueryInterface( AEECLSID clsid ) (SFBQuery から継承)
このオブジェクトからの別の API を問い合わせます。
SInt32 Read( VoidPtr buf , SInt32 size ) (SFBSource から継承)
指定したバッファにソースストリームからのバイトをコピーします。
SInt32 Read( SFXBufferPtr buf ) (SFBSource から継承)
指定したバッファにソースストリームからのバイトをコピーします。
Void Readable( SFXCallbackPtr callback ) (SFBSource から継承)
SFBSource::Read 関数が ISOURCE_WAIT 以外のものを返した場合に呼び出されるコールバック関数を 登録または登録解除します。
Void Self( AEECLSID clsidReq , SFBQuerySmpPtr clone , AEECLSID clsidImp ) (SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
SFBQuerySmp Self( AEECLSID clsidReq , AEECLSID clsidImp ) (SFBQuery から継承)
オブジェクトを単一インターフェースで実装するときに使います。
プロテクト関数
static
SFBBaseSmp
FactoryByCreate( AEECLSID id , SFCErrorPtr exception = null ) (SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを生成します。
static
SFBBaseSmp
FactoryByQuery( SFBQuerySmpConstRef query , AEECLSID id , SFCErrorPtr exception = null ) (SFBBase から継承)
指定したクラス ID のインターフェースのインスタンスを指定した SFBQuery インスタンスを使用して生成します。

SFBPeek::Advance
バッファ内のピーク ポインタを前進または後進させます。
[ public ]
Void Advance(
    SInt32 advance   // 前進するバイト数( 負の場合は、後進するバイト数 )
);

参照

BREW API IPEEK_Advance


SFBPeek::Peek
バッファに格納されたデータへのポインタを返し、 オプションとして、バッファ内のデータをさらに読み込むことを試みます。
[ public ]
VoidPtr Peek(
    SInt32 wanted         // 指定したバイト数
                          // この数だけのバイトがバッファ内に既に使用可能な場合、 Peek() はそれ以上処理を行わない
                          // そうでない場合、この関数はネットワーク(またはほかの任意データソース)から
                          // さらにデータをコピーすることを試みる
                          // 現在のバッファ状態をすばやく問い合わせるには、0 ( ゼロ )を渡す
                          // IPEEK_PEEKMAX の定義は「可能な限りのデータを返すこと」
    SInt32Ptr available   // バッファ内のデータのサイズ
    SInt32Ptr code        // 返されたデータのほかに使用可能なデータがあるかどうかを次のように示す
                          // IPEEK_END   : これ以上データがない( ストリーム内で END に遭遇 )
                          // IPEEK_ERROR : これ以上データがない( ストリーム内で ERROR に遭遇 )
                          // IPEEK_FULL  : データがバッファサイズにより制限された
                          //               新しいデータを取得するため、バッファに格納されたデータ
                          //               を超えて前進する必要がある
                          // IPEEK_WAIT  : 再コールする前に SFBPeek::Peekable() の結果を待つこと
                          //               データソースがポーリングされたが、今は使用可能なデータがない
                          // IPEEK_UNK   : 要求されたデータの量がバッファ内のデータの量よりも少なかった
                          //               wanted の値をより大きくして再コールすること
                          //               データソースはポーリングされなかった
);

参照

BREW API IPEEK_Peek


SFBPeek::Peekable
バッファに格納されていないデータがまだある場合に、 コールバック関数を呼び出します。
[ public ]
Void Peekable(
    SFXCallbackPtr callback   // SFBSource 読み込み可能な場合のコールバックへのポインタ
);

参照

BREW API IPEEK_Peekable