49 { std::vector<ComponentSchema> result;
for (
size_t i = 0;
i <
m_schemas.size(); ++
i) {
if (
m_schemas[
i].category == category) { result.push_back(
m_schemas[
i]); } }
return result; }
52 { std::vector<ComponentSchema> result;
for (
size_t i = 0;
i <
m_schemas.size(); ++
i) {
if (
m_schemas[
i].componentName.find(
query) != std::string::npos) { result.push_back(
m_schemas[
i]); } }
return result; }
63 if (
schema !=
nullptr) {
for (
size_t i = 0;
i <
schema->parameters.size(); ++
i) {
if (
schema->parameters[
i].name == parameterName) {
return &
schema->parameters[
i]; } } }
71 return std::vector<ParameterDefinition>();
78 { (
void)componentName; (
void)parameterName; (
void)value;
return true; }
94 { std::vector<ComponentSchema> result;
for (
size_t i = 0;
i <
m_schemas.size(); ++
i) {
if (
m_schemas[
i].isDeprecated) { result.push_back(
m_schemas[
i]); } }
return result; }
ComponentTypeID GetComponentTypeID_Static()
~ParameterSchemaRegistry()
std::vector< std::string > GetSchemaNames() const
bool IsSchemaDeprecated(const std::string &componentName) const
std::vector< ComponentSchema > SearchSchemas(const std::string &query) const
bool ValidateComponent(const ComponentData &component) const
void UnregisterSchema(const std::string &componentName)
bool ValidateParameter(const std::string &componentName, const std::string ¶meterName, const std::string &value) const
std::map< std::string, size_t > m_schemaIndex
const ParameterDefinition * GetParameterDefinition(const std::string &componentName, const std::string ¶meterName) const
std::vector< ComponentSchema > m_schemas
size_t GetTotalParameterCount() const
void RebuildCategoryIndex()
std::vector< std::string > GetCategories() const
static ParameterSchemaRegistry & Get()
std::map< std::string, std::vector< size_t > > m_categoryIndex
bool HasSchema(const std::string &componentName) const
std::vector< ComponentSchema > GetSchemasInCategory(const std::string &category) const
void RegisterSchema(const ComponentSchema &schema)
size_t GetSchemaCount() const
const std::vector< ComponentSchema > & GetAllSchemas() const
void LoadSchemasFromDirectory(const std::string &directoryPath)
static ParameterSchemaRegistry * s_instance
ParameterSchemaRegistry()
std::vector< ComponentSchema > GetSchemasByCategory(const std::string &category) const
size_t GetCategoryCount() const
const ComponentSchema * GetSchema(const std::string &componentName) const
std::vector< ParameterDefinition > GetParametersForComponent(const std::string &componentName) const
std::vector< ComponentSchema > GetDeprecatedSchemas() const
void LoadSchemasFromFile(const std::string &filePath)
< Provides AssetID and INVALID_ASSET_ID