DDraceNetwork Docs
CDemoRecorder Class Reference

#include <demo.h>

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

Public Member Functions

 CDemoRecorder (class CSnapshotDelta *pSnapshotDelta, bool NoMapData=false)
 
 CDemoRecorder ()
 
 ~CDemoRecorder () override
 
int Start (class IStorage *pStorage, class IConsole *pConsole, const char *pFilename, const char *pNetversion, const char *pMap, const SHA256_DIGEST &Sha256, unsigned MapCrc, const char *pType, unsigned MapSize, unsigned char *pMapData, IOHANDLE MapFile, DEMOFUNC_FILTER pfnFilter, void *pUser)
 
int Stop (IDemoRecorder::EStopMode Mode, const char *pTargetFilename="") override
 
void AddDemoMarker ()
 
void AddDemoMarker (int Tick)
 
void RecordSnapshot (int Tick, const void *pData, int Size)
 
void RecordMessage (const void *pData, int Size)
 
bool IsRecording () const override
 
const char * CurrentFilename () const override
 
int Length () const override
 
- Public Member Functions inherited from IDemoRecorder
virtual ~IDemoRecorder ()
 
virtual bool IsRecording () const =0
 
virtual int Stop (IDemoRecorder::EStopMode Mode, const char *pTargetFilename="")=0
 
virtual int Length () const =0
 
virtual const char * CurrentFilename () const =0
 
- Public Member Functions inherited from IInterface
 IInterface ()
 
virtual void Shutdown ()
 
virtual ~IInterface ()
 

Private Member Functions

void WriteTickMarker (int Tick, bool Keyframe)
 
void Write (int Type, const void *pData, int Size)
 

Private Attributes

class IConsolem_pConsole
 
class IStoragem_pStorage
 
IOHANDLE m_File
 
char m_aCurrentFilename [IO_MAX_PATH_LENGTH]
 
int m_LastTickMarker
 
int m_LastKeyFrame
 
int m_FirstTick
 
unsigned char m_aLastSnapshotData [CSnapshot::MAX_SIZE]
 
class CSnapshotDeltam_pSnapshotDelta
 
int m_NumTimelineMarkers
 
int m_aTimelineMarkers [MAX_TIMELINE_MARKERS]
 
bool m_NoMapData
 
DEMOFUNC_FILTER m_pfnFilter
 
void * m_pUser
 

Additional Inherited Members

- Public Types inherited from IDemoRecorder
enum class  EStopMode { KEEP_FILE , REMOVE_FILE }
 
- Static Public Member Functions inherited from IDemoRecorder
static const char * InterfaceName ()
 
- Protected Member Functions inherited from IInterface
IKernelKernel ()
 

Constructor & Destructor Documentation

◆ CDemoRecorder() [1/2]

CDemoRecorder::CDemoRecorder ( class CSnapshotDelta pSnapshotDelta,
bool  NoMapData = false 
)

◆ CDemoRecorder() [2/2]

CDemoRecorder::CDemoRecorder ( )
inline

◆ ~CDemoRecorder()

CDemoRecorder::~CDemoRecorder ( )
override

Member Function Documentation

◆ AddDemoMarker() [1/2]

void CDemoRecorder::AddDemoMarker ( )

◆ AddDemoMarker() [2/2]

void CDemoRecorder::AddDemoMarker ( int  Tick)

◆ CurrentFilename()

const char * CDemoRecorder::CurrentFilename ( ) const
inlineoverridevirtual

Implements IDemoRecorder.

◆ IsRecording()

bool CDemoRecorder::IsRecording ( ) const
inlineoverridevirtual

Implements IDemoRecorder.

◆ Length()

int CDemoRecorder::Length ( ) const
inlineoverridevirtual

Implements IDemoRecorder.

◆ RecordMessage()

void CDemoRecorder::RecordMessage ( const void *  pData,
int  Size 
)

◆ RecordSnapshot()

void CDemoRecorder::RecordSnapshot ( int  Tick,
const void *  pData,
int  Size 
)

◆ Start()

int CDemoRecorder::Start ( class IStorage pStorage,
class IConsole pConsole,
const char *  pFilename,
const char *  pNetversion,
const char *  pMap,
const SHA256_DIGEST Sha256,
unsigned  MapCrc,
const char *  pType,
unsigned  MapSize,
unsigned char *  pMapData,
IOHANDLE  MapFile,
DEMOFUNC_FILTER  pfnFilter,
void *  pUser 
)

◆ Stop()

int CDemoRecorder::Stop ( IDemoRecorder::EStopMode  Mode,
const char *  pTargetFilename = "" 
)
overridevirtual

Implements IDemoRecorder.

◆ Write()

void CDemoRecorder::Write ( int  Type,
const void *  pData,
int  Size 
)
private

◆ WriteTickMarker()

void CDemoRecorder::WriteTickMarker ( int  Tick,
bool  Keyframe 
)
private

Member Data Documentation

◆ m_aCurrentFilename

char CDemoRecorder::m_aCurrentFilename[IO_MAX_PATH_LENGTH]
private

◆ m_aLastSnapshotData

unsigned char CDemoRecorder::m_aLastSnapshotData[CSnapshot::MAX_SIZE]
private

◆ m_aTimelineMarkers

int CDemoRecorder::m_aTimelineMarkers[MAX_TIMELINE_MARKERS]
private

◆ m_File

IOHANDLE CDemoRecorder::m_File
private

◆ m_FirstTick

int CDemoRecorder::m_FirstTick
private

◆ m_LastKeyFrame

int CDemoRecorder::m_LastKeyFrame
private

◆ m_LastTickMarker

int CDemoRecorder::m_LastTickMarker
private

◆ m_NoMapData

bool CDemoRecorder::m_NoMapData
private

◆ m_NumTimelineMarkers

int CDemoRecorder::m_NumTimelineMarkers
private

◆ m_pConsole

class IConsole* CDemoRecorder::m_pConsole
private

◆ m_pfnFilter

DEMOFUNC_FILTER CDemoRecorder::m_pfnFilter
private

◆ m_pSnapshotDelta

class CSnapshotDelta* CDemoRecorder::m_pSnapshotDelta
private

◆ m_pStorage

class IStorage* CDemoRecorder::m_pStorage
private

◆ m_pUser

void* CDemoRecorder::m_pUser
private

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