You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.6 KiB
64 lines
2.6 KiB
//========= 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
|