Team Fortress 2 Source Code as on 22/4/2020
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.

37 lines
1.1 KiB

  1. //========= Copyright Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose: Exposes client-server neutral interfaces implemented in both places
  4. //
  5. // $NoKeywords: $
  6. //=============================================================================//
  7. #ifndef SHAREDINTERFACE_H
  8. #define SHAREDINTERFACE_H
  9. #ifdef POSIX
  10. #define random random_valve// stdlib.h defined random() and our class defn conflicts so under POSIX rename it using the preprocessor
  11. #endif
  12. class IFileSystem;
  13. class IUniformRandomStream;
  14. class CGaussianRandomStream;
  15. class IEngineSound;
  16. class IMapData;
  17. extern IFileSystem *filesystem;
  18. #if defined(_STATIC_LINKED) && defined(_SUBSYSTEM) && (defined(CLIENT_DLL) || defined(GAME_DLL))
  19. namespace _SUBSYSTEM
  20. {
  21. extern IUniformRandomStream *random;
  22. }
  23. #else
  24. extern IUniformRandomStream *random;
  25. #endif
  26. extern CGaussianRandomStream *randomgaussian;
  27. extern IEngineSound *enginesound;
  28. extern IMapData *g_pMapData; // TODO: current implementations of the
  29. // interface are in TF2, should probably move
  30. // to TF2/HL2 neutral territory
  31. #endif // SHAREDINTERFACE_H