6#include "./../../third_party/nlohmann/json.hpp"
15 struct ParameterDefinition;
ComponentTypeID GetComponentTypeID_Static()
static void SaveJsonToFile(const std::string &filePath, const json &data)
static EntityPrefab LoadFromFile(const std::string &filePath)
static bool ValidatePrefab(const EntityPrefab &prefab)
static json LoadJsonFromFile(const std::string &filePath)
static std::vector< ComponentSchema > LoadAllSchemas(const std::string &schemasPath)
static ComponentSchema ParseSchemaV4(const json &data)
static void SaveToFile(const std::string &filePath, const EntityPrefab &prefab)
static bool ValidateComponentData(const ComponentData &component, const ComponentSchema &schema)
static std::string GetSchemaVersion(const json &data)
static ComponentSchema ParseComponentSchema(const json &schemaJson)
static json SerializeSchemaV4(const EntityPrefab &prefab)
< Provides AssetID and INVALID_ASSET_ID
@ EntityPrefab
.pref.json files (Entity Prefab)
static ComponentData FromJson(const json &data)
ComponentData(const std::string &type)
std::string componentType
std::map< std::string, std::string > properties
std::string componentName
ComponentSchema(const std::string &name)
static ComponentSchema FromJson(const json &data)
std::vector< ParameterDefinition > parameters
std::string componentName
EntityPrefab(const std::string &name)
std::vector< ComponentData > components
std::map< std::string, std::string > metadata
static EntityPrefab FromJson(const json &data)
ParameterDefinition(const std::string &n)
std::vector< std::string > allowedValues
static ParameterDefinition FromJson(const json &data)