Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

RageFileObj Class Reference

#include <RageFileBasic.h>

Inheritance diagram for RageFileObj:

Inheritance graph
[legend]
Collaboration diagram for RageFileObj:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 RageFileObj ()
virtual ~RageFileObj ()
virtual CString GetError () const
virtual void ClearError ()
bool AtEOF () const
int Seek (int iOffset)
int Seek (int offset, int whence)
int Tell () const
int Read (void *pBuffer, size_t iBytes)
int Read (CString &buffer, int bytes=-1)
int Read (void *buffer, size_t bytes, int nmemb)
int Write (const void *pBuffer, size_t iBytes)
int Write (const CString &sString)
int Write (const void *buffer, size_t bytes, int nmemb)
int Flush ()
int GetLine (CString &out)
int PutLine (const CString &str)
void EnableCRC32 (bool on=true)
bool GetCRC32 (uint32_t *iRet)
virtual int GetFileSize () const =0
virtual CString GetDisplayPath () const
virtual RageFileBasicCopy () const

Protected Member Functions

virtual int SeekInternal (int iOffset)
virtual int ReadInternal (void *pBuffer, size_t iBytes)=0
virtual int WriteInternal (const void *pBuffer, size_t iBytes)=0
virtual int FlushInternal ()
void EnableBuffering ()
void SetError (const CString &sError)

Protected Attributes

CString m_sError

Private Types

enum  { BSIZE = 1024 }

Private Member Functions

int FillBuf ()
void ResetBuf ()

Private Attributes

bool m_bEOF
int m_iFilePos
char * m_pBuffer
char * m_pBuf
int m_iBufAvail
bool m_bCRC32Enabled
uint32_t m_iCRC32

Member Enumeration Documentation

anonymous enum [private]
 

Enumeration values:
BSIZE 


Constructor & Destructor Documentation

RageFileObj::RageFileObj  ) 
 

RageFileObj::~RageFileObj  )  [virtual]
 


Member Function Documentation

bool RageFileObj::AtEOF  )  const [inline, virtual]
 

Implements RageFileBasic.

virtual void RageFileObj::ClearError  )  [inline, virtual]
 

Implements RageFileBasic.

virtual RageFileBasic* RageFileObj::Copy  )  const [inline, virtual]
 

Implements RageFileBasic.

Reimplemented in RageFileObjInflate, RageFileObjDirect, RageFileObjMem, RageFileDriverSlice, and RageFileObjTimeout.

void RageFileObj::EnableBuffering  )  [protected]
 

void RageFileObj::EnableCRC32 bool  on = true  )  [virtual]
 

Implements RageFileBasic.

int RageFileObj::FillBuf  )  [private]
 

int RageFileObj::Flush  )  [virtual]
 

Implements RageFileBasic.

virtual int RageFileObj::FlushInternal  )  [inline, protected, virtual]
 

Reimplemented in RageFileObjDeflate, RageFileObjDirect, and RageFileObjTimeout.

bool RageFileObj::GetCRC32 uint32_t *  iRet  )  [virtual]
 

Implements RageFileBasic.

virtual CString RageFileObj::GetDisplayPath  )  const [inline, virtual]
 

Reimplemented from RageFileBasic.

Reimplemented in RageFileObjDirect.

virtual CString RageFileObj::GetError  )  const [inline, virtual]
 

Implements RageFileBasic.

virtual int RageFileObj::GetFileSize  )  const [pure virtual]
 

Implements RageFileBasic.

Implemented in RageFileObjInflate, RageFileObjDeflate, RageFileObjDirect, RageFileObjMem, RageFileDriverSlice, and RageFileObjTimeout.

int RageFileObj::GetLine CString &  out  )  [virtual]
 

Implements RageFileBasic.

int RageFileObj::PutLine const CString &  str  )  [virtual]
 

Implements RageFileBasic.

int RageFileObj::Read void *  buffer,
size_t  bytes,
int  nmemb
[virtual]
 

Implements RageFileBasic.

int RageFileObj::Read CString &  buffer,
int  bytes = -1
[virtual]
 

Implements RageFileBasic.

int RageFileObj::Read void *  pBuffer,
size_t  iBytes
[virtual]
 

Implements RageFileBasic.

virtual int RageFileObj::ReadInternal void *  pBuffer,
size_t  iBytes
[protected, pure virtual]
 

Implemented in RageFileObjInflate, RageFileObjDeflate, RageFileObjDirect, RageFileObjMem, RageFileDriverSlice, and RageFileObjTimeout.

void RageFileObj::ResetBuf  )  [private]
 

int RageFileObj::Seek int  offset,
int  whence
[virtual]
 

Implements RageFileBasic.

int RageFileObj::Seek int  iOffset  )  [virtual]
 

Implements RageFileBasic.

virtual int RageFileObj::SeekInternal int  iOffset  )  [inline, protected, virtual]
 

Reimplemented in RageFileObjInflate, RageFileObjDirect, RageFileObjMem, and RageFileDriverSlice.

void RageFileObj::SetError const CString &  sError  )  [inline, protected]
 

int RageFileObj::Tell  )  const [inline, virtual]
 

Implements RageFileBasic.

int RageFileObj::Write const void *  buffer,
size_t  bytes,
int  nmemb
[virtual]
 

Implements RageFileBasic.

int RageFileObj::Write const CString &  sString  )  [inline, virtual]
 

Implements RageFileBasic.

int RageFileObj::Write const void *  pBuffer,
size_t  iBytes
[virtual]
 

Implements RageFileBasic.

virtual int RageFileObj::WriteInternal const void *  pBuffer,
size_t  iBytes
[protected, pure virtual]
 

Implemented in RageFileObjInflate, RageFileObjDeflate, RageFileObjDirect, RageFileObjMem, RageFileDriverSlice, and RageFileObjTimeout.


Member Data Documentation

bool RageFileObj::m_bCRC32Enabled [private]
 

bool RageFileObj::m_bEOF [private]
 

int RageFileObj::m_iBufAvail [private]
 

uint32_t RageFileObj::m_iCRC32 [private]
 

int RageFileObj::m_iFilePos [private]
 

Reimplemented in RageFileObjInflate, RageFileObjMem, and RageFileDriverSlice.

char* RageFileObj::m_pBuf [private]
 

char* RageFileObj::m_pBuffer [private]
 

CString RageFileObj::m_sError [protected]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 27 21:01:16 2005 for StepMania by doxygen 1.3.7