BuildSettings.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. // Copyright (c) 2014-2015, THUNDERBEAST GAMES LLC All rights reserved
  2. // Please see LICENSE.md in repository root for license information
  3. // https://github.com/AtomicGameEngine/AtomicGameEngine
  4. #pragma once
  5. /*
  6. #include <rapidjson/document.h>
  7. #include <rapidjson/filestream.h>
  8. #include <rapidjson/prettywriter.h>
  9. #include <Atomic/Container/Str.h>
  10. #include <Atomic/Core/Object.h>
  11. using namespace Atomic;
  12. namespace ToolCore
  13. {
  14. struct AndroidBuildSettings
  15. {
  16. String appName;
  17. String package;
  18. String targetSDKVersion;
  19. String minSDKVersion;
  20. String activityName;
  21. String companyName;
  22. String productName;
  23. };
  24. struct IOSBuildSettings
  25. {
  26. String appName;
  27. String package;
  28. String companyName;
  29. String productName;
  30. String provisionFile;
  31. String appidPrefix;
  32. };
  33. struct MacBuildSettings
  34. {
  35. String appName;
  36. String package;
  37. String companyName;
  38. String productName;
  39. };
  40. struct WindowsBuildSettings
  41. {
  42. String appName;
  43. String package;
  44. String companyName;
  45. String productName;
  46. };
  47. struct WebGLSettings
  48. {
  49. String appName;
  50. String package;
  51. String companyName;
  52. String productName;
  53. };
  54. class BuildSettings : public Object
  55. {
  56. OBJECT(BuildSettings);
  57. public:
  58. /// Construct.
  59. BuildSettings(Context* context);
  60. /// Destruct.
  61. virtual ~BuildSettings();
  62. const AndroidBuildSettings& GetAndroidSettings() { return android_; }
  63. void SetAndroidSettings(const AndroidBuildSettings& settings) { android_ = settings; }
  64. const IOSBuildSettings& GetIOSSettings() { return ios_; }
  65. void SetIOSSettings(const IOSBuildSettings& settings) { ios_ = settings; }
  66. const MacBuildSettings& GetMacSettings() { return mac_; }
  67. void SetMacSettings(const MacBuildSettings& settings) { mac_ = settings; }
  68. const WindowsBuildSettings& GetWindowsSettings() { return windows_; }
  69. void SetWindowsSettings(const WindowsBuildSettings& settings) { windows_ = settings; }
  70. const WebGLSettings& GetWebGLSettings() { return webgl_; }
  71. void SetWebGLSettings(const WebGLSettings& settings) { webgl_ = settings; }
  72. void Load(rapidjson::Value::Member* jobject);
  73. void Save(rapidjson::PrettyWriter<rapidjson::FileStream>& writer);
  74. private:
  75. String GetStringMember(rapidjson::Value::Member* jobject, const String& name);
  76. AndroidBuildSettings android_;
  77. IOSBuildSettings ios_;
  78. MacBuildSettings mac_;
  79. WindowsBuildSettings windows_;
  80. WebGLSettings webgl_;
  81. };
  82. }
  83. */