Core.h 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. #pragma once
  2. #include <string>
  3. #include <nlohmann/json.hpp>
  4. #include <glm/vec3.hpp>
  5. #include <glm/vec2.hpp>
  6. #include <glm/mat4x4.hpp>
  7. #include "WallpaperEngine/Core/Types/FloatColor.h"
  8. #include "WallpaperEngine/Core/Types/IntegerColor.h"
  9. namespace WallpaperEngine::Core
  10. {
  11. using namespace WallpaperEngine::Core::Types;
  12. glm::vec4 aToVector4 (const char* str);
  13. glm::vec3 aToVector3 (const char* str);
  14. glm::vec2 aToVector2 (const char* str);
  15. glm::vec4 aToVector4 (const std::string& str);
  16. glm::vec3 aToVector3 (const std::string& str);
  17. glm::vec2 aToVector2 (const std::string& str);
  18. FloatColor aToColorf (const char* str);
  19. FloatColor aToColorf (const std::string& str);
  20. IntegerColor aToColori (const char* str);
  21. IntegerColor aToColori (const std::string& str);
  22. nlohmann::json::iterator jsonFindRequired (nlohmann::json& data, const char *key, const char *notFoundMsg);
  23. nlohmann::json::iterator jsonFindRequired (nlohmann::json::iterator& data, const char *key, const char *notFoundMsg);
  24. template <typename T> T jsonFindDefault (nlohmann::json& data, const char *key, T defaultValue);
  25. };