BrewSDK 開発(3)
ファイル関係のクラスと、その他ちょこちょこ弄りました。
id:melpon:19990101
BrewShell クラスは、IShell インターフェースの wrapper です。まだ CreateInstance() しか作ってないですが、今後増えていく予定です。
BrewSmartPtr< IFileMgr > fileManager;
EResult ret = BrewShell::CreateInstance( AEECLSID_FILEMGR , fileManager );
if( ret == ER_OK ){
....
}
SUCCESS や EFAILED は #define で定義されているだけなので、デバッガでは数字で表示されてしまい、それだと分かりにくいので enum で列挙しました。
スマートポインタに配列等をセットするときは、Deleter も一緒に登録する必要があるのですが、大体はポインタの型と同じ Deleter を使えばいいだけなので、スマートポインタにポインタをセットするための setter を作りました。
BrewSmartPtr< Hoge > hoge; BrewSmartPtrSetter::SetArray( hoge , new Hoge[ 10 ] );
ファイルを操作するためのクラス、及びファイルストリームクラスを実装しました。
BrewFileInputStream fis = BrewFileInputStream::Open( "test.dat" ); fis.Read( buf , fis.GetSize() );
そろそろイメージ周りをやらないと、このままだと全く使い物にならないなぁ……。