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.
44 lines
886 B
44 lines
886 B
//=========== Copyright Valve Corporation, All rights reserved. ===============// |
|
// |
|
// Purpose: |
|
//=============================================================================// |
|
|
|
#ifndef UISCHEDULEDDEL_H |
|
#define UISCHEDULEDDEL_H |
|
|
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
#include "tier1/utldelegate.h" |
|
|
|
namespace panorama |
|
{ |
|
|
|
|
|
// Panorama wrapper around CUtlSymbol which always creates symbol in panorama.dll module |
|
class CUIScheduledDel |
|
{ |
|
public: |
|
// constructor, destructor |
|
CUIScheduledDel( CUtlDelegate< void() > del ); |
|
~CUIScheduledDel(); |
|
|
|
void Schedule( double flSecondsToRunIn ); |
|
|
|
void Cancel(); |
|
|
|
bool BScheduled(); |
|
|
|
double GetSecondsUntilScheduled() { return MAX( m_flNextScheduled - UIEngine()->GetCurrentFrameTime(), 0.0 ); } |
|
|
|
private: |
|
|
|
double m_flNextScheduled; |
|
int m_iScheduledIndex; |
|
CUtlDelegate< void() > m_del; |
|
}; |
|
|
|
} // namespace panorama |
|
|
|
#endif // UISCHEDULEDDEL_H
|