20static constexpr double DEMO_SPEEDS[] = {0.1, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 2.0, 3.0, 4.0, 6.0, 8.0, 12.0, 16.0, 20.0, 24.0, 28.0, 32.0, 40.0, 48.0, 56.0, 64.0};
virtual bool Slice(const char *pDemo, const char *pDst, int StartTick, int EndTick, DEMOFUNC_FILTER pfnFilter, void *pUser)=0
float m_Speed
Definition demo.h:70
int m_NumTimelineMarkers
Definition demo.h:76
bool m_LivePlayback
Definition demo.h:69
bool m_Paused
Definition demo.h:67
int m_CurrentTick
Definition demo.h:73
bool m_LiveDemo
Definition demo.h:68
int m_LastTick
Definition demo.h:74
int m_FirstTick
Definition demo.h:72
virtual bool GetDemoInfo(class IStorage *pStorage, class IConsole *pConsole, const char *pFilename, int StorageType, CDemoHeader *pDemoHeader, CTimelineMarkers *pTimelineMarkers, CMapInfo *pMapInfo, IOHANDLE *pFile=nullptr, char *pErrorMessage=nullptr, size_t ErrorMessageSize=0) const =0
virtual void SetSpeedIndex(int SpeedIndex)=0
virtual int SeekTick(ETickOffset TickOffset)=0
virtual void GetDemoName(char *pBuffer, size_t BufferSize) const =0
virtual void SetSpeed(float Speed)=0
virtual void AdjustSpeedIndex(int Offset)=0
virtual ~IDemoPlayer()=default
virtual int SetPos(int WantedTick)=0
virtual const CInfo * BaseInfo() const =0
virtual int SeekTime(float Seconds)=0
virtual bool IsPlaying() const =0
virtual const char * ErrorMessage() const =0
virtual int SeekPercent(float Percent)=0
ETickOffset
Definition demo.h:81
@ TICK_NEXT
Definition demo.h:84
@ TICK_PREVIOUS
Definition demo.h:83
@ TICK_CURRENT
Definition demo.h:82
virtual int Stop(IDemoRecorder::EStopMode Mode, const char *pTargetFilename="")=0
virtual bool IsRecording() const =0
EStopMode
Definition demo.h:109
virtual int Length() const =0
virtual ~IDemoRecorder()=default
virtual const char * CurrentFilename() const =0
bool(* DEMOFUNC_FILTER)(const void *pData, int DataSize, void *pUser)
Definition demo.h:24
@ MAX_TIMELINE_MARKERS
Definition demo.h:15
static const unsigned char gs_aHeaderMarker[7]
Definition demo.h:18
static constexpr int DEMO_SPEED_INDEX_DEFAULT
Definition demo.h:21
static constexpr double DEMO_SPEEDS[]
Definition demo.h:20
const CUuid SHA256_EXTENSION
Definition demo.cpp:21
@ MAX_MAP_LENGTH
Definition map.h:12
#define MACRO_INTERFACE(Name)
Definition kernel.h:25
void * IOHANDLE
Definition logger.h:12
char m_aName[MAX_MAP_LENGTH]
Definition demo.h:54
unsigned m_Size
Definition demo.h:57
unsigned m_Crc
Definition demo.h:56
SHA256_DIGEST m_Sha256
Definition demo.h:55
unsigned char m_aTimelineMarkers[MAX_TIMELINE_MARKERS][sizeof(int32_t)]
Definition demo.h:49
unsigned char m_aNumTimelineMarkers[sizeof(int32_t)]
Definition demo.h:48
Definition uuid_manager.h:17