Counter Strike : Global Offensive Source Code
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
1.5 KiB

  1. //====== Copyright � 1996-2005, Valve Corporation, All rights reserved. =======
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================
  6. #ifndef ISERVERFOUNDRY_H
  7. #define ISERVERFOUNDRY_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include "interface.h"
  12. //-----------------------------------------------------------------------------
  13. // Purpose: exposed from Foundry (Hammer) to game DLL
  14. //-----------------------------------------------------------------------------
  15. class IServerFoundry : public IBaseInterface
  16. {
  17. public:
  18. // This is used when you load a savegame and use certain Hammer entities on top of the savegame data.
  19. virtual bool GetRestoredEntityReplacementData( int iHammerID, CUtlVector<char> &data ) = 0;
  20. virtual void OnFinishedRestoreSavegame() = 0;
  21. // Move Hammer's version of the entity.
  22. virtual void MoveEntityTo( int nHammerID, const Vector &vPos, const QAngle &vAngles ) = 0;
  23. // Move Hammer's 3D view to the specified position.
  24. virtual void MoveHammerViewTo( const Vector &vPos, const QAngle &vAngles ) = 0;
  25. // If the game is controlling the input, release it.
  26. virtual void EngineGetMouseControl() = 0;
  27. virtual void EngineReleaseMouseControl() = 0;
  28. // Select the specified entities in Hammer.
  29. virtual void SelectEntities( int *pHammerIDs, int nIDs ) = 0;
  30. // Simulate a mouse click in the center of the 3D view.
  31. virtual void SelectionClickInCenterOfView( const Vector &vPos, const QAngle &vAngles ) = 0;
  32. };
  33. #define VSERVERFOUNDRY_INTERFACE_VERSION "VSERVERFOUNDRY001"
  34. #endif // ISERVERFOUNDRY_H