afSettings.h
上传用户:kaiguan
上传日期:2007-10-28
资源大小:1074k
文件大小:4k
源码类别:

其他游戏

开发平台:

Visual C++

  1. ///  Stores general Settings
  2. /**
  3.  * The class  has only static members, since
  4.  * it is not expected and can not be instantiated.
  5.  * Its primary work is to store global settings and do
  6.  * path calculations.
  7.  */
  8. #ifndef AF_SETTINGS
  9. #define AF_SETTINGS
  10. class  afSettings
  11. {
  12. public:
  13. /// init() has to be called before any path can be retrieved
  14. static void init();
  15. /// Returns the path where the exe file is located
  16. static const char* getAppPath()  { return pathApp; }
  17. /// Returns a temporary copy of an ani-extended path. nExt is added
  18. static char* tmpFullPath(const char* nFileName, const char* nExt=0);
  19. /// Returns the path where the ani files are stored
  20. static const char* getAniPath()  { return pathAni; }
  21. /// Extends a path by prefixing the bsp path
  22. static void extendToAniPath(const char* nFileName, char* nFullName);
  23. /// Returns a temporary copy of an ani-extended path. nExt is added
  24. static char* tmpFullAniPath(const char* nFileName, const char* nExt=0);
  25. /// Returns the path where the bsp files are stored
  26. static const char* getBSPPath()  { return pathBSP; }
  27. /// Extends a path by prefixing the bsp path
  28. static void extendToBSPPath(const char* nFileName, char* nFullName);
  29. /// Returns a temporary copy of an bsp-extended path. nExt is added
  30. static char* tmpFullBSPPath(const char* nFileName, const char* nExt=0);
  31. static const char* getAudioPath()  { return pathAudio; }
  32. static void extendToAudioPath(const char* nFileName, char* nFullName);
  33. static char* tmpFullAudioPath(const char* nFileName, const char* nExt=0);
  34. static const char* getCharPath()  { return pathChar; }
  35. static void extendToCharPath(const char* nFileName, char* nFullName);
  36. static char* tmpFullCharPath(const char* nFileName, const char* nExt=0);
  37. static const char* getGamePath()  { return pathGame; }
  38. static void extendToGamePath(const char* nFileName, char* nFullName);
  39. static char* tmpFullGamePath(const char* nFileName, const char* nExt=0);
  40. static const char* getPathPath()  { return pathPath; }
  41. static void extendToPathPath(const char* nFileName, char* nFullName);
  42. static char* tmpFullPathPath(const char* nFileName, const char* nExt=0);
  43. static const char* getLevelPath()  { return pathLevel; }
  44. static void extendToLevelPath(const char* nFileName, char* nFullName);
  45. static char* tmpFullLevelPath(const char* nFileName, const char* nExt=0);
  46. static void extendToMD2Path(const char* nFileName, char* nFullName);
  47. static char* tmpFullMD2Path(const char* nFileName, const char* nExt=0);
  48. static void extendToOBJPath(const char* nFileName, char* nFullName);
  49. static char* tmpFullOBJPath(const char* nFileName, const char* nExt=0);
  50. static void extendToPsPath(const char* nFileName, char* nFullName); // extends a path by prefixing the bsp path
  51. static char* tmpFullPsPath(const char* nFileName, const char* nExt=0); // returns a temporary copy of an bsp extended path
  52. static void extendToTerrainPath(const char* nFileName, char* nFullName);
  53. static char* tmpFullTerrainPath(const char* nFileName, const char* nExt);
  54. static const char* getTexturePath()  { return pathTex; }
  55. static void extendToTexturePath(const char* nFileName, char* nFullName);
  56. static char* tmpFullTexturePath(const char* nFileName, const char* nExt=0);
  57. static void extendToBspTexPath(const char* nFileName, char* nFullName);
  58. static char* tmpFullBspTexPath(const char* nFileName, const char* nExt=0);
  59. static void extendToTextureMD2Path(const char* nFileName, char* nFullName);
  60. static char* tmpFullTextureMD2Path(const char* nFileName, const char* nExt=0);
  61. private:
  62. afSettings();
  63. static char* pathAni;
  64. static char* pathApp;
  65. static char* pathAudio;
  66. static char* pathBSP;
  67. static char* pathChar;
  68. static char* pathGame;
  69. static char* pathPath;
  70. static char* pathLevel;
  71. static char* pathMD2;
  72. static char* pathOBJ;
  73. static char* pathPS;
  74. static char* pathSprite;
  75. static char* pathTerrain;
  76. static char* pathTex;
  77. static char* pathBspTex;
  78. };
  79. #endif