DDraceNetwork Documentation
Loading...
Searching...
No Matches
CGhostLoader Class Reference

#include <ghost.h>

Inheritance diagram for CGhostLoader:
[legend]
Collaboration diagram for CGhostLoader:
[legend]

Public Member Functions

 CGhostLoader ()
 
void Init ()
 
bool Load (const char *pFilename, const char *pMap, const SHA256_DIGEST &MapSha256, unsigned MapCrc) override
 
void Close () override
 
const CGhostInfoGetInfo () const override
 
bool ReadNextType (int *pType) override
 
bool ReadData (int Type, void *pData, size_t Size) override
 
bool GetGhostInfo (const char *pFilename, CGhostInfo *pGhostInfo, const char *pMap, const SHA256_DIGEST &MapSha256, unsigned MapCrc) override
 
- Public Member Functions inherited from IGhostLoader
virtual ~IGhostLoader ()=default
 
- Public Member Functions inherited from IInterface
 IInterface ()
 
virtual void Shutdown ()
 
virtual ~IInterface ()=default
 

Private Member Functions

void ResetBuffer ()
 
IOHANDLE ReadHeader (CGhostHeader &Header, const char *pFilename, const char *pMap, const SHA256_DIGEST &MapSha256, unsigned MapCrc, bool LogMapMismatch) const
 
bool ValidateHeader (const CGhostHeader &Header, const char *pFilename) const
 
bool CheckHeaderMap (const CGhostHeader &Header, const char *pFilename, const char *pMap, const SHA256_DIGEST &MapSha256, unsigned MapCrc, bool LogMapMismatch) const
 
bool ReadChunk (int *pType)
 

Private Attributes

IOHANDLE m_File
 
char m_aFilename [IO_MAX_PATH_LENGTH]
 
class IStoragem_pStorage
 
CGhostHeader m_Header
 
CGhostInfo m_Info
 
char m_aBuffer [MAX_CHUNK_SIZE]
 
char m_aBufferTemp [MAX_CHUNK_SIZE]
 
charm_pBufferPos
 
const charm_pBufferEnd
 
int m_BufferNumItems
 
int m_BufferCurItem
 
int m_BufferPrevItem
 
CGhostItem m_LastItem
 

Additional Inherited Members

- Static Public Member Functions inherited from IGhostLoader
static const charInterfaceName ()
 
- Protected Member Functions inherited from IInterface
IKernelKernel ()
 

Constructor & Destructor Documentation

◆ CGhostLoader()

CGhostLoader::CGhostLoader ( )

Member Function Documentation

◆ CheckHeaderMap()

bool CGhostLoader::CheckHeaderMap ( const CGhostHeader Header,
const char pFilename,
const char pMap,
const SHA256_DIGEST MapSha256,
unsigned  MapCrc,
bool  LogMapMismatch 
) const
private

◆ Close()

void CGhostLoader::Close ( )
overridevirtual

Implements IGhostLoader.

◆ GetGhostInfo()

bool CGhostLoader::GetGhostInfo ( const char pFilename,
CGhostInfo pGhostInfo,
const char pMap,
const SHA256_DIGEST MapSha256,
unsigned  MapCrc 
)
overridevirtual

Implements IGhostLoader.

◆ GetInfo()

const CGhostInfo * CGhostLoader::GetInfo ( ) const
inlineoverridevirtual

Implements IGhostLoader.

◆ Init()

void CGhostLoader::Init ( )

◆ Load()

bool CGhostLoader::Load ( const char pFilename,
const char pMap,
const SHA256_DIGEST MapSha256,
unsigned  MapCrc 
)
overridevirtual

Implements IGhostLoader.

◆ ReadChunk()

bool CGhostLoader::ReadChunk ( int pType)
private

◆ ReadData()

bool CGhostLoader::ReadData ( int  Type,
void pData,
size_t  Size 
)
overridevirtual

Implements IGhostLoader.

◆ ReadHeader()

IOHANDLE CGhostLoader::ReadHeader ( CGhostHeader Header,
const char pFilename,
const char pMap,
const SHA256_DIGEST MapSha256,
unsigned  MapCrc,
bool  LogMapMismatch 
) const
private

◆ ReadNextType()

bool CGhostLoader::ReadNextType ( int pType)
overridevirtual

Implements IGhostLoader.

◆ ResetBuffer()

void CGhostLoader::ResetBuffer ( )
private

◆ ValidateHeader()

bool CGhostLoader::ValidateHeader ( const CGhostHeader Header,
const char pFilename 
) const
private

Member Data Documentation

◆ m_aBuffer

char CGhostLoader::m_aBuffer[MAX_CHUNK_SIZE]
private

◆ m_aBufferTemp

char CGhostLoader::m_aBufferTemp[MAX_CHUNK_SIZE]
private

◆ m_aFilename

char CGhostLoader::m_aFilename[IO_MAX_PATH_LENGTH]
private

◆ m_BufferCurItem

int CGhostLoader::m_BufferCurItem
private

◆ m_BufferNumItems

int CGhostLoader::m_BufferNumItems
private

◆ m_BufferPrevItem

int CGhostLoader::m_BufferPrevItem
private

◆ m_File

IOHANDLE CGhostLoader::m_File
private

◆ m_Header

CGhostHeader CGhostLoader::m_Header
private

◆ m_Info

CGhostInfo CGhostLoader::m_Info
private

◆ m_LastItem

CGhostItem CGhostLoader::m_LastItem
private

◆ m_pBufferEnd

const char* CGhostLoader::m_pBufferEnd
private

◆ m_pBufferPos

char* CGhostLoader::m_pBufferPos
private

◆ m_pStorage

class IStorage* CGhostLoader::m_pStorage
private

The documentation for this class was generated from the following files: