"L. Spiro Engine"

F:/My Projects/LSEngine/Modules/LSFileLib/Src/FileStream/LSFFileStream.h

00001 
00016 #ifndef __LSF_FILESTREAM_H__
00017 #define __LSF_FILESTREAM_H__
00018 
00019 #include "../LSFFileLib.h"
00020 #include "Streams/LSSTDStream.h"
00021 
00022 namespace lsf {
00023 
00030         class CFileStream : public lsstd::IStream {
00031         public :
00032                 // == Various constructors.
00033                 LSE_CALLCTOR                                                    CFileStream( const LSCHAR * _pcFile, LSF_OPEN_FILE _ofOpenType, LSBOOL _bOpenAlways );
00034                 LSE_CALLCTOR                                                    ~CFileStream();
00035 
00036 
00037                 // == Functions.
00045                 virtual LSUINT32 LSE_CALL                               ReadBytes( LSUINT8 * _pui8Buffer, LSUINT32 _ui32BytesToRead ) const;
00046 
00052                 virtual LSUINT64 LSE_CALL                               ReadUInt64() const;
00053                 
00059                 virtual LSUINT32 LSE_CALL                               ReadUInt32() const;
00060 
00066                 virtual LSUINT16 LSE_CALL                               ReadUInt16() const;
00067 
00073                 virtual LSUINT8 LSE_CALL                                ReadUInt8() const;
00074 
00080                 virtual LSFLOAT LSE_CALL                                ReadFloat() const;
00081 
00087                 virtual LSDOUBLE LSE_CALL                               ReadDouble() const;
00088 
00096                 virtual LSUINT32 LSE_CALL                               WriteBytes( const LSUINT8 * _pui8Buffer, LSUINT32 _ui32BytesToWrite );
00097 
00103                 virtual LSBOOL LSE_CALL                                 WriteUInt64( const LSUINT64 &_ui64Value );
00104                 
00110                 virtual LSBOOL LSE_CALL                                 WriteUInt32( LSUINT32 _ui32Value );
00111 
00117                 virtual LSBOOL LSE_CALL                                 WriteUInt16( LSUINT16 _ui16Value );
00118 
00124                 virtual LSBOOL LSE_CALL                                 WriteUInt8( LSUINT8 _ui8Value );
00125 
00131                 virtual LSBOOL LSE_CALL                                 WriteFloat( LSFLOAT _fValue );
00132 
00138                 virtual LSBOOL LSE_CALL                                 WriteDouble( const LSDOUBLE &_dValue );
00139 
00140 
00141         protected :
00142                 // == Members.
00146                 LSF_FILE                                                                m_fFile;
00147         };
00148 
00149 
00150         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00151         // DEFINITIONS
00152         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00153         
00154 
00155 }       // namespace lsf
00156 
00157 #endif  // __LSF_FILESTREAM_H__
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator