diff options
Diffstat (limited to 'game/server/logicrelay.h')
| -rw-r--r-- | game/server/logicrelay.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/game/server/logicrelay.h b/game/server/logicrelay.h new file mode 100644 index 0000000..8d082ac --- /dev/null +++ b/game/server/logicrelay.h @@ -0,0 +1,48 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +// $NoKeywords: $ +// +//=============================================================================// +#ifndef LOGICRELAY_H +#define LOGICRELAY_H + +#include "cbase.h" +#include "entityinput.h" +#include "entityoutput.h" +#include "eventqueue.h" + +class CLogicRelay : public CLogicalEntity +{ +public: + DECLARE_CLASS( CLogicRelay, CLogicalEntity ); + + CLogicRelay(); + + void Activate(); + void Think(); + + // Input handlers + void InputEnable( inputdata_t &inputdata ); + void InputEnableRefire( inputdata_t &inputdata ); // Private input handler, not in FGD + void InputDisable( inputdata_t &inputdata ); + void InputToggle( inputdata_t &inputdata ); + void InputTrigger( inputdata_t &inputdata ); + void InputCancelPending( inputdata_t &inputdata ); + + DECLARE_DATADESC(); + + // Outputs + COutputEvent m_OnTrigger; + COutputEvent m_OnSpawn; + + bool IsDisabled( void ){ return m_bDisabled; } + +private: + + bool m_bDisabled; + bool m_bWaitForRefire; // Set to disallow a refire while we are waiting for our outputs to finish firing. +}; + +#endif //LOGICRELAY_H |