Grabber::newMemBufferCollection Method [非推奨]

新しいメモリバッファコレクションを作成します。

構文

tMemBufferCollectionPtr newMemBufferCollection( DWORD count = 1 ) const;
tMemBufferCollectionPtr newMemBufferCollection( SIZE size, tColorformatEnum colorformat,
                         DWORD count = 1 ) const;
tMemBufferCollectionPtr newMemBufferCollection( SIZE size, tColorformatEnum colorformat,
                         DWORD buffersize, BYTE* buffers[], DWORD count ) const;
tMemBufferCollectionPtr newMemBufferCollection( DWORD buffersize, BYTE* buffers [], DWORD count ) const;
パラメータ 説明
size コレクション内に格納されるフレームのサイズを指定します。
count コレクション内に格納されるフレーム数を指定します。値は最低で1となります。
colorformat コレクション内に格納されるフレームのカラーフォーマットを指定します。
buffers ユーザーが割り当てるバッファへのポインタの配列です。
buffersize ユーザーが割り当てるシングルバッファのサイズです。

備考

このメソッドは新しいMemBufferCollectionクラスライブラリリファレンス>クラス>MemBufferCollectionを作成します。
countが0の場合、エラーが生成されます。
引数としてcountの値だけを与えた場合、現在のデバイスのセッティングに合わせたMemBufferCollectionクラスライブラリリファレンス>クラス>MemBufferCollectionを作成します。
そこにはcount で指定した数のMemBufferクラスライブラリリファレンス>クラス>MemBufferが含まれます。必要なメモリがこのメソッドによって割り当てられます。
size, colorformat, countのパラメータをコンストラクタに渡すと、それらの値に対応したMemBufferCollectionが作成され、そのバッファ用のメモリが割り当てられます。
ポインタの配列と各バッファサイズの情報をコンストラクタに渡すことで、以前にアプリケーション内のどこかに割り当てたMemBufferCollectionクラスライブラリリファレンス>クラス>MemBufferCollectionへバッファを与えることも可能です。ただしMemBufferCollectionクラスライブラリリファレンス>クラス>MemBufferCollectionへの処理はkernel-modeにて行われるため慎重に行う必要がございます。間違ったbuffersizeの情報をコンストラクタに送った場合、システムはほぼ間違いなくクラッシュしてしまします。

ページ上部へ戻る