VCMIDirs.h 1010 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #pragma once
  2. #include "GameConstants.h"
  3. /*
  4. * VCMIDirs.h, part of VCMI engine
  5. *
  6. * Authors: listed in file AUTHORS in main folder
  7. *
  8. * License: GNU General Public License v2.0 or later
  9. * Full text of license available in license.txt file, in main folder
  10. *
  11. */
  12. /// Where to find the various VCMI files. This is mostly useful for linux.
  13. class DLL_LINKAGE VCMIDirs
  14. {
  15. public:
  16. VCMIDirs();
  17. /// get singleton instance
  18. static VCMIDirs & get();
  19. /// Path to local, user-specific directory (e.g. ~/.vcmi on *nix systems)
  20. std::string localPath() const;
  21. /// Path where vcmi libraries can be found (in AI and Scripting subdirectories)
  22. std::string libraryPath() const;
  23. /// Path to vcmiserver, including server name (e.g. /usr/bin/vcmiserver)
  24. std::string serverPath() const;
  25. /// Path to global system-wide data directory
  26. std::string dataPath() const;
  27. /// Returns system-specific name for dynamic libraries ("libStupidAI.so" or "StupidAI.dll")
  28. std::string libraryName(std::string basename) const;
  29. };