Porytiles
Loading...
Searching...
No Matches
porytiles::MetatileAttributeFieldDefinition Struct Reference

A user-authored (or inferred) description of one metatile attribute field. More...

#include <metatile_attribute_field_definition.hpp>

Collaboration diagram for porytiles::MetatileAttributeFieldDefinition:
[legend]

Public Member Functions

bool operator== (const MetatileAttributeFieldDefinition &) const =default
 

Public Attributes

std::string name
 
std::optional< std::uint32_t > mask
 
std::optional< std::uint32_t > default_value
 
std::optional< ProviderDefinitionprovider
 
std::optional< FieldRolerole
 

Detailed Description

A user-authored (or inferred) description of one metatile attribute field.

This is the raw config-layer value that feeds the schema loader. The loader turns the definitions into a validated Schema and resolves any overrides.

mask is the field's bit mask; it is optional at the parse layer so an override merge can supply it, but a fully merged definition without one is rejected by the loader. default_value is the value used when the field is absent from a metatile. provider optionally points the field at the header that declares its value names. role marks a field whose per-metatile values Porytiles manages (see FieldRole); in YAML it is spelled role: layer_type.

Definition at line 28 of file metatile_attribute_field_definition.hpp.

Member Function Documentation

◆ operator==()

bool porytiles::MetatileAttributeFieldDefinition::operator== ( const MetatileAttributeFieldDefinition ) const
default

Member Data Documentation

◆ default_value

std::optional<std::uint32_t> porytiles::MetatileAttributeFieldDefinition::default_value

Definition at line 31 of file metatile_attribute_field_definition.hpp.

◆ mask

std::optional<std::uint32_t> porytiles::MetatileAttributeFieldDefinition::mask

Definition at line 30 of file metatile_attribute_field_definition.hpp.

◆ name

std::string porytiles::MetatileAttributeFieldDefinition::name

Definition at line 29 of file metatile_attribute_field_definition.hpp.

◆ provider

std::optional<ProviderDefinition> porytiles::MetatileAttributeFieldDefinition::provider

Definition at line 32 of file metatile_attribute_field_definition.hpp.

◆ role

std::optional<FieldRole> porytiles::MetatileAttributeFieldDefinition::role

Definition at line 33 of file metatile_attribute_field_definition.hpp.


The documentation for this struct was generated from the following file: