ストリームの利用
ストリームとはここではディスクファイルやダイナミックメモリなどの記憶媒体のことです。
ストリームオブジェクトを使う事でストリームを利用できます。
ストリームは色々なオブジェクトからアクセスできるので、今回は Image と Socket でデータ
を共用する為にTMemoryStreamを利用しました。
利用方法(TMemoryStreamの場合)
- TMemoryStream *Stream1;
でMemoryStreamへアクセスする変数Stream1 を作製します。
- Stream1 = new TMemoryStream();
で Stream1 が MemoryStream にアクセスできます。
- Stream1->SetSize(Length);
でStream1 のサイズを変更します。
- Stream1->Position = 0;
でStream1のアクセスするメモリーの位置を変更します。
- Stream1->Write(buf,len);
buf の内容をStream1中のメモリーのPositionの位置から
len バイトだけ書き込む。
- jp->SaveToStream(Stream1);
jpはTJPEGIamge型です。SaveToStreamメソッドを使って
jpのjpegイメージをStream1に保存。
- Socket->SendBuf(Stream1->Memory,Stream1->Size);
Stream1の内容(Memory)をSize分
だけ送信する。
masaki@tube.ee.uec.ac.jp