diff options
Diffstat (limited to 'common/replay/ireplaycontext.h')
| -rw-r--r-- | common/replay/ireplaycontext.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/common/replay/ireplaycontext.h b/common/replay/ireplaycontext.h new file mode 100644 index 0000000..f4fda37 --- /dev/null +++ b/common/replay/ireplaycontext.h @@ -0,0 +1,47 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +//=======================================================================================// + +#ifndef IREPLAYCONTEXT_H +#define IREPLAYCONTEXT_H +#ifdef _WIN32 +#pragma once +#endif + +//---------------------------------------------------------------------------------------- + +#include "interface.h" +#include "replay/replayhandle.h" + +//---------------------------------------------------------------------------------------- + +class IRecordingSessionManager; +class IRecordingSessionBlockManager; +class IRecordingSession; +class IReplayErrorSystem; + +//---------------------------------------------------------------------------------------- + +class IReplayContext : public IBaseInterface +{ +public: + virtual bool Init( CreateInterfaceFn fnCreateFactory ) = 0; + virtual void Shutdown() = 0; + + virtual void Think() = 0; + + virtual bool IsInitialized() const = 0; + + virtual const char *GetRelativeBaseDir() const = 0; // Returns path to wherever the index .dmx lives relative to the game path, e.g. "replay\client\" + virtual const char *GetBaseDir() const = 0; // Returns full directory to wherever the index .dmx lives, e.g. c:\program files (x86)\steam\steamapps\<username>\team fortress 2\tf\replays\<client|server>\ -- NOTE: includes trailing slash + virtual const char *GetReplaySubDir() const = 0; // Returns "client" or "server" + + virtual IReplayErrorSystem *GetErrorSystem() = 0; + virtual IRecordingSessionManager *GetRecordingSessionManager() = 0; + virtual IRecordingSessionBlockManager *GetRecordingSessionBlockManager() = 0; + virtual IRecordingSession *GetRecordingSession( ReplayHandle_t hSession ) = 0; +}; + +//---------------------------------------------------------------------------------------- + +#endif // IREPLAYCONTEXT_H |