summaryrefslogtreecommitdiff
path: root/game/server/ilagcompensationmanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'game/server/ilagcompensationmanager.h')
-rw-r--r--game/server/ilagcompensationmanager.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/game/server/ilagcompensationmanager.h b/game/server/ilagcompensationmanager.h
new file mode 100644
index 0000000..b874904
--- /dev/null
+++ b/game/server/ilagcompensationmanager.h
@@ -0,0 +1,31 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//=============================================================================//
+
+#ifndef ILAGCOMPENSATIONMANAGER_H
+#define ILAGCOMPENSATIONMANAGER_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+class CBasePlayer;
+class CUserCmd;
+
+//-----------------------------------------------------------------------------
+// Purpose: This is also an IServerSystem
+//-----------------------------------------------------------------------------
+abstract_class ILagCompensationManager
+{
+public:
+ // Called during player movement to set up/restore after lag compensation
+ virtual void StartLagCompensation( CBasePlayer *player, CUserCmd *cmd ) = 0;
+ virtual void FinishLagCompensation( CBasePlayer *player ) = 0;
+ virtual bool IsCurrentlyDoingLagCompensation() const = 0;
+};
+
+extern ILagCompensationManager *lagcompensation;
+
+#endif // ILAGCOMPENSATIONMANAGER_H