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.
40 lines
1.5 KiB
40 lines
1.5 KiB
//========= 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
|
|
|