BuildSettings.h 2.5 KB

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