hl2_src-leak-2017/src/replay/cl_renderqueue.h

48 lines
1.3 KiB
C++

//========= Copyright Valve Corporation, All rights reserved. ============//
//
//=======================================================================================//
#ifndef REPLAYRENDERQUEUE_H
#define REPLAYRENDERQUEUE_H
#ifdef _WIN32
#pragma once
#endif
//----------------------------------------------------------------------------------------
#include "replay/ireplayrenderqueue.h"
#include "utlvector.h"
//----------------------------------------------------------------------------------------
class CRenderQueue : public IReplayRenderQueue
{
public:
CRenderQueue();
~CRenderQueue();
virtual void Add( ReplayHandle_t hReplay, int iPerformance );
virtual void Remove( ReplayHandle_t hReplay, int iPerformance );
virtual void Clear();
virtual int GetCount() const;
virtual bool GetEntryData( int iIndex, ReplayHandle_t *pHandleOut, int *pPerformanceOut ) const;
virtual bool IsInQueue( ReplayHandle_t hReplay, int iPerformance ) const;
private:
struct RenderInfo_t
{
ReplayHandle_t m_hReplay;
int m_iPerformance;
};
RenderInfo_t *Find( ReplayHandle_t hReplay, int iPerformance );
const RenderInfo_t *Find( ReplayHandle_t hReplay, int iPerformance ) const;
CUtlVector< RenderInfo_t * > m_vecQueue;
};
//----------------------------------------------------------------------------------------
#endif // REPLAYRENDERQUEUE_H