diff options
Diffstat (limited to 'game/client/replay/vgui/replaybrowseritemmanager.h')
| -rw-r--r-- | game/client/replay/vgui/replaybrowseritemmanager.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/game/client/replay/vgui/replaybrowseritemmanager.h b/game/client/replay/vgui/replaybrowseritemmanager.h new file mode 100644 index 0000000..4468119 --- /dev/null +++ b/game/client/replay/vgui/replaybrowseritemmanager.h @@ -0,0 +1,40 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +//=======================================================================================// + +#ifndef REPLAYBROWSER_ITEMMANAGER_H +#define REPLAYBROWSER_ITEMMANAGER_H +#ifdef _WIN32 +#pragma once +#endif + +#include "utllinkedlist.h" +#include <vgui_controls/Panel.h> + +//----------------------------------------------------------------------------- +// Purpose: +//----------------------------------------------------------------------------- +typedef int ReplayItemHandle_t; + +//----------------------------------------------------------------------------- +// Purpose: Layer of abstraction between UI and replay demos or rendered movies +//----------------------------------------------------------------------------- +class IQueryableReplayItem; + +abstract_class IReplayItemManager : public IBaseInterface +{ +public: + virtual int GetItemCount() = 0; + virtual void GetItems( CUtlLinkedList< IQueryableReplayItem *, int > &items ) = 0; + virtual IQueryableReplayItem *GetItem( ReplayItemHandle_t hItem ) = 0; + virtual bool AreItemsMovies() = 0; + virtual void DeleteItem( vgui::Panel *pPage, ReplayItemHandle_t hItem, bool bNotifyUI ) = 0; +}; + +IReplayItemManager *GetReplayItemManager(); +IReplayItemManager *GetReplayMovieItemManager(); + +// Find an item and put the item manager in ppItemManager +IQueryableReplayItem *FindReplayItem( ReplayItemHandle_t hItem, IReplayItemManager **ppItemManager ); + +#endif // REPLAYBROWSER_ITEMMANAGER_H |