CrossFramework Library

XBase/ResFileStream.hpp

説明を見る。
00001 
00006 #if defined(XBASE_INCLUDED_RESFILESTREAM_HPP)
00007 #else
00008 #define XBASE_INCLUDED_RESFILESTREAM_HPP
00009 
00010 //------------------------------------------------------------
00011 #include <XBase/FunctionAttribute.hpp>
00012 #include <XBase/IAllocator.hpp>
00013 #include <XBase/IReadStream.hpp>
00014 
00015 // EXT
00016 #include <XBase/ResFileStream_STDC.hpp>
00017 
00018 //------------------------------------------------------------
00019 namespace XBase {
00021 
00022 
00035     class ResFileStream : public IReadStream
00036     {
00037     public:
00039 
00040 
00041         static const pword_t ReadBufferAlignment = IAllocator::DefaultAlignment;
00043 
00045 
00046 
00053         static pword_t CalcReadBufferSize( pword_t aSize );
00055 
00057 
00058 
00062         ResFileStream();
00063 
00069         ResFileStream( const char* aPath );
00070 
00075         virtual ~ResFileStream();
00077 
00079 
00080 
00086         bool open( const char* aPath );
00088 
00089         // IReadStreamの実装。
00090         XBASE_OVERRIDE( pword_t requireReadBufferAlignment()const );
00091         XBASE_OVERRIDE( pword_t calcReadBufferSize( pword_t aSize )const );
00092         XBASE_OVERRIDE( pword_t seek( int aOffset , SeekOrigin aOrigin ) );
00093         XBASE_OVERRIDE( pword_t read( ptr_t aBuffer , pword_t aSize ) );
00094         XBASE_OVERRIDE( void close() );
00095 
00096     private:
00097         ResFileStream_EXT mEXT;
00098     };
00099 
00101 }
00102 //------------------------------------------------------------
00103 #endif
00104 // EOF
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義