diff options
Diffstat (limited to 'common/replay/iclientreplay.h')
| -rw-r--r-- | common/replay/iclientreplay.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/common/replay/iclientreplay.h b/common/replay/iclientreplay.h new file mode 100644 index 0000000..1d4b53d --- /dev/null +++ b/common/replay/iclientreplay.h @@ -0,0 +1,64 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +//=======================================================================================// + +#ifndef ICLIENTREPLAY_H +#define ICLIENTREPLAY_H +#ifdef _WIN32 +#pragma once +#endif + +//---------------------------------------------------------------------------------------- + +#include "interface.h" +#include "replay/replayhandle.h" + +//---------------------------------------------------------------------------------------- + +#define CLIENT_REPLAY_INTERFACE_VERSION "ClientReplay001" + +//---------------------------------------------------------------------------------------- + +class IReplayFactory; +class IReplayScreenshotSystem; +class IReplayPerformancePlaybackHandler; +class KeyValues; +class IReplayCamera; +class CReplayPerformance; +struct RenderMovieParams_t; +class IGameEvent; + +//---------------------------------------------------------------------------------------- + +// +// Allows the replay and engine DLL's to talk to the client. +// +class IClientReplay : public IBaseInterface +{ +public: + virtual uint64 GetServerSessionId() = 0; + virtual bool CacheReplayRagdolls( const char* pFilename, int nStartTick ) = 0; // Cache replay ragdolls + virtual IReplayScreenshotSystem *GetReplayScreenshotSystem() = 0; // Get the client's replay screenshot system + virtual IReplayPerformancePlaybackHandler *GetPerformancePlaybackHandler() = 0; + virtual IReplayCamera *GetReplayCamera() = 0; + virtual void DisplayReplayMessage( const char *pLocalizeStr, bool bUrgent, bool bDlg, const char *pSound ) = 0; + virtual void DisplayReplayMessage( const wchar_t *pText, bool bUrgent, bool bDlg, const char *pSound ) = 0; + virtual void InitPerformanceEditor( ReplayHandle_t hReplay ) = 0; + virtual void HidePerformanceEditor() = 0; + virtual bool ShouldRender() = 0; + virtual void PlaySound( const char *pSound ) = 0; + virtual void UploadOgsData( KeyValues *pData, bool bIncludeTimeField ) = 0; + virtual bool ShouldCompletePendingReplay( IGameEvent *pEvent ) = 0; + + virtual void OnSaveReplay( ReplayHandle_t hNewReplay, bool bShowInputDlg ) = 0; + virtual void OnDeleteReplay( ReplayHandle_t hReplay ) = 0; // Called before replay is actually removed from the replay manager + virtual void OnPlaybackComplete( ReplayHandle_t hReplay, int iPerformance ) = 0; + virtual void OnRenderStart() = 0; + virtual void OnRenderComplete( const RenderMovieParams_t &RenderParams, bool bCancelled, bool bSuccess, bool bShowBrowser ) = 0; + virtual bool OnConfirmQuit() = 0; + virtual bool OnEndOfReplayReached() = 0; +}; + +//---------------------------------------------------------------------------------------- + +#endif // ICLIENTREPLAY_H
\ No newline at end of file |