59 lines
1.2 KiB
C++
59 lines
1.2 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
//=============================================================================
|
|
|
|
#ifndef TOOLDEMOFILE_H
|
|
#define TOOLDEMOFILE_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "mathlib/vector.h"
|
|
#include "tier0/platform.h"
|
|
#include "utlvector.h"
|
|
#include "filesystem.h"
|
|
#include "demofile/demoformat.h"
|
|
|
|
class CUtlBuffer;
|
|
|
|
class CToolDemoFile
|
|
{
|
|
public:
|
|
CToolDemoFile();
|
|
virtual ~CToolDemoFile();
|
|
|
|
bool Open(const char *name, bool bReadOnly);
|
|
bool IsOpen();
|
|
void Close();
|
|
|
|
void SeekTo( int position );
|
|
unsigned int GetCurPos();
|
|
int GetSize();
|
|
|
|
int ReadRawData( char *buffer, int length );
|
|
|
|
void ReadSequenceInfo(int &nSeqNrIn, int &nSeqNrOutAck);
|
|
|
|
void ReadCmdInfo( democmdinfo_t& info );
|
|
|
|
void ReadCmdHeader( unsigned char& cmd, int& tick );
|
|
|
|
const char *ReadConsoleCommand( void );
|
|
|
|
int ReadNetworkDataTables( CUtlBuffer *buf ); // if buf is NULL, skip it
|
|
|
|
int ReadUserCmd( char *buffer, int &size );
|
|
|
|
demoheader_t *ReadDemoHeader();
|
|
|
|
|
|
public:
|
|
FileHandle_t m_hDemoFile; // filesystem handle
|
|
char m_szFileName[MAX_PATH]; //name of current demo file
|
|
demoheader_t m_DemoHeader; //general demo info
|
|
};
|
|
|
|
#endif // TOOLDEMOFILE_H
|