This repository has been archived on 2024-06-13. You can view files and clone it, but cannot push or open issues or pull requests.
2020-08-04 13:13:01 -04:00

44 lines
1.6 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
//=======================================================================================//
#ifndef IREPLAYMANAGER_H
#define IREPLAYMANAGER_H
#ifdef _WIN32
#pragma once
#endif
//----------------------------------------------------------------------------------------
#include "interface.h"
#include "replay/replayhandle.h"
#include "utllinkedlist.h"
//----------------------------------------------------------------------------------------
class CReplay;
class IQueryableReplayItem;
//----------------------------------------------------------------------------------------
class IReplayManager : public IBaseInterface {
public:
virtual CReplay *GetReplay(ReplayHandle_t hReplay) = 0;
virtual CReplay *GetPlayingReplay() = 0;
virtual CReplay *GetReplayForCurrentLife() = 0;
virtual void FlagReplayForFlush(CReplay *pReplay, bool bForceImmediate) = 0;
virtual void DeleteReplay(ReplayHandle_t hReplay, bool bNotifyUI) = 0;
virtual int GetReplayCount() const = 0;
virtual int
GetUnrenderedReplayCount() = 0; // Get the number of unrendered replays
virtual void GetReplays(CUtlLinkedList<CReplay *, int> &lstReplays) = 0;
virtual void GetReplaysAsQueryableItems(
CUtlLinkedList<IQueryableReplayItem *, int> &lstReplays) = 0;
virtual float GetDownloadProgress(const CReplay *pReplay) = 0;
virtual const char *GetReplaysDir() const = 0;
};
//----------------------------------------------------------------------------------------
#endif // IREPLAYMANAGER_H