Odamex
Setting the Standard in Multiplayer Doom
FArchive Class Reference

#include <farchive.h>

Data Structures

struct  ObjectMap
struct  TypeMap

Public Member Functions

 FArchive (FFile &file)
virtual ~FArchive ()
bool IsLoading () const
bool IsStoring () const
bool IsPeristent () const
void SetHubTravel ()
void Close ()
virtual void Write (const void *mem, unsigned int len)
virtual void Read (void *mem, unsigned int len)
void WriteCount (DWORD count)
DWORD ReadCount ()
FArchiveoperator<< (BYTE c)
FArchiveoperator<< (WORD s)
FArchiveoperator<< (DWORD i)
FArchiveoperator<< (QWORD i)
FArchiveoperator<< (float f)
FArchiveoperator<< (double d)
FArchiveoperator<< (const char *str)
FArchiveoperator<< (DObject *obj)
FArchiveoperator<< (char c)
FArchiveoperator<< (SBYTE c)
FArchiveoperator<< (SWORD s)
FArchiveoperator<< (SDWORD i)
FArchiveoperator<< (SQWORD i)
FArchiveoperator<< (const unsigned char *str)
FArchiveoperator<< (const signed char *str)
FArchiveoperator<< (bool b)
FArchiveoperator<< (int i)
FArchiveoperator<< (unsigned int i)
FArchiveoperator>> (BYTE &c)
FArchiveoperator>> (WORD &s)
FArchiveoperator>> (DWORD &i)
FArchiveoperator>> (QWORD &i)
FArchiveoperator>> (float &f)
FArchiveoperator>> (double &d)
FArchiveoperator>> (std::string &s)
FArchiveReadObject (DObject *&obj, TypeInfo *wanttype)
FArchiveoperator>> (char &c)
FArchiveoperator>> (SBYTE &c)
FArchiveoperator>> (SWORD &s)
FArchiveoperator>> (SDWORD &i)
FArchiveoperator>> (SQWORD &i)
FArchiveoperator>> (bool &b)
FArchiveoperator>> (DObject *&object)
FArchiveoperator>> (int &i)
FArchiveoperator>> (unsigned int &i)

Protected Types

enum  { EObjectHashSize = 137 }

Protected Member Functions

DWORD FindObjectIndex (const DObject *obj) const
DWORD MapObject (const DObject *obj)
DWORD WriteClass (const TypeInfo *info)
const TypeInfoReadClass ()
const TypeInfoReadClass (const TypeInfo *wanttype)
const TypeInfoReadStoredClass (const TypeInfo *wanttype)
DWORD HashObject (const DObject *obj) const

Protected Attributes

bool m_Persistent
bool m_Loading
bool m_Storing
bool m_HubTravel
FFilem_File
DWORD m_ObjectCount
DWORD m_MaxObjectCount
DWORD m_ClassCount
struct FArchive::TypeMapm_TypeMap
struct FArchive::ObjectMapm_ObjectMap
size_t m_ObjectHash [EObjectHashSize]

Member Enumeration Documentation

anonymous enum [protected]
Enumerator:
EObjectHashSize 

Constructor & Destructor Documentation

FArchive::FArchive ( FFile file)
FArchive::~FArchive ( ) [virtual]

Member Function Documentation

void FArchive::Close ( )
DWORD FArchive::FindObjectIndex ( const DObject obj) const [protected]
DWORD FArchive::HashObject ( const DObject obj) const [protected]
bool FArchive::IsLoading ( ) const [inline]
bool FArchive::IsPeristent ( ) const [inline]
bool FArchive::IsStoring ( ) const [inline]
DWORD FArchive::MapObject ( const DObject obj) [protected]
FArchive& FArchive::operator<< ( const unsigned char *  str) [inline]
FArchive & FArchive::operator<< ( const char *  str)
FArchive & FArchive::operator<< ( DObject obj)
FArchive& FArchive::operator<< ( char  c) [inline]
FArchive& FArchive::operator<< ( SBYTE  c) [inline]
FArchive & FArchive::operator<< ( BYTE  c)
FArchive& FArchive::operator<< ( SWORD  s) [inline]
FArchive& FArchive::operator<< ( SDWORD  i) [inline]
FArchive & FArchive::operator<< ( WORD  s)
FArchive& FArchive::operator<< ( SQWORD  i) [inline]
FArchive& FArchive::operator<< ( bool  b) [inline]
FArchive & FArchive::operator<< ( DWORD  i)
FArchive& FArchive::operator<< ( const signed char *  str) [inline]
FArchive & FArchive::operator<< ( QWORD  i)
FArchive& FArchive::operator<< ( int  i) [inline]
FArchive& FArchive::operator<< ( unsigned int  i) [inline]
FArchive & FArchive::operator<< ( float  f)
FArchive & FArchive::operator<< ( double  d)
FArchive& FArchive::operator>> ( DObject *&  object) [inline]
FArchive & FArchive::operator>> ( float &  f)
FArchive & FArchive::operator>> ( double &  d)
FArchive & FArchive::operator>> ( std::string s)
FArchive& FArchive::operator>> ( SWORD s) [inline]
FArchive& FArchive::operator>> ( SDWORD i) [inline]
FArchive& FArchive::operator>> ( int &  i) [inline]
FArchive& FArchive::operator>> ( char &  c) [inline]
FArchive& FArchive::operator>> ( unsigned int &  i) [inline]
FArchive& FArchive::operator>> ( SQWORD i) [inline]
FArchive& FArchive::operator>> ( bool &  b) [inline]
FArchive& FArchive::operator>> ( SBYTE c) [inline]
FArchive & FArchive::operator>> ( DWORD i)
FArchive & FArchive::operator>> ( BYTE c)
FArchive & FArchive::operator>> ( QWORD i)
FArchive & FArchive::operator>> ( WORD s)
void FArchive::Read ( void *  mem,
unsigned int  len 
) [virtual]
const TypeInfo * FArchive::ReadClass ( const TypeInfo wanttype) [protected]
const TypeInfo * FArchive::ReadClass ( ) [protected]
DWORD FArchive::ReadCount ( )
FArchive & FArchive::ReadObject ( DObject *&  obj,
TypeInfo wanttype 
)
const TypeInfo * FArchive::ReadStoredClass ( const TypeInfo wanttype) [protected]
void FArchive::SetHubTravel ( ) [inline]
void FArchive::Write ( const void *  mem,
unsigned int  len 
) [virtual]
DWORD FArchive::WriteClass ( const TypeInfo info) [protected]
void FArchive::WriteCount ( DWORD  count)

Field Documentation

FFile* FArchive::m_File [protected]
bool FArchive::m_HubTravel [protected]
bool FArchive::m_Loading [protected]
size_t FArchive::m_ObjectHash[EObjectHashSize] [protected]
bool FArchive::m_Persistent [protected]
bool FArchive::m_Storing [protected]
struct FArchive::TypeMap * FArchive::m_TypeMap [protected]

The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends