|
Porytiles
|
A ConfigProvider that auto-detects metatile attribute size from metatiles.h declarations. More...
#include <metatiles_header_provider.hpp>
Public Member Functions | |
| MetatilesHeaderProvider (std::filesystem::path project_root, gsl::not_null< const TextFormatter * > format) | |
| Constructs a MetatilesHeaderProvider. | |
| std::string | name () const override |
| Gets the name of this ConfigProvider, useful for diagnostic purposes. | |
| LayerValue< std::size_t > | metatile_attr_size (ConfigScopeType type, const std::string &scope) const override |
Public Member Functions inherited from porytiles::ConfigProvider | |
| virtual | ~ConfigProvider ()=default |
| virtual LayerValue< std::size_t > | num_tiles_in_primary (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_tiles_total (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_metatiles_in_primary (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_metatiles_total (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_pals_in_primary (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_pals_total (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | max_map_data_size (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::size_t > | num_tiles_per_metatile (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< Rgba32 > | extrinsic_transparency (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< ArtifactEditMode > | tiles_edit_mode (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< ArtifactEditMode > | pals_edit_mode (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< bool > | pal_hints_enabled (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< PaletteHint > > | pal_hints (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< PackingStrategyType > | packing_strategy (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< PackingStrategyParams > | packing_strategy_params (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< TileSharingPacking > | tile_sharing_packing (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< TileSharingAlignment > | tile_sharing_alignment (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< TilesPalMode > | tiles_pal_mode (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< AnimPalResolutionStrategy > | global_anim_pal_resolution_strategy (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< AnimKeyFrameResolutionStrategy > | global_anim_key_frame_resolution_strategy (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< AnimMultiPalSubtileResolutionStrategy > | global_anim_multi_pal_subtile_resolution_strategy (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< FrameLinking > | global_frame_linking (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< PerAnimOverrides > | per_anim_overrides (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< bool > | cross_tileset_anim_linking (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< bool > | verify_checksums (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< PrimaryPairingMode > | primary_pairing_mode (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< std::string > > | primary_pairing_partners (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< std::string > > | diagnostic_warnings_exclude (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< std::string > > | diagnostic_warnings_include (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< std::string > > | diagnostic_remarks_exclude (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::vector< std::string > > | diagnostic_remarks_include (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::string > | tileset_paths_primary_src (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::string > | tileset_paths_primary_bin (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::string > | tileset_paths_secondary_src (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< std::string > | tileset_paths_secondary_bin (ConfigScopeType type, const std::string &scope) const |
| virtual LayerValue< bool > | tileset_animations_wire_anim_code (ConfigScopeType type, const std::string &scope) const |
A ConfigProvider that auto-detects metatile attribute size from metatiles.h declarations.
MetatilesHeaderProvider scans src/data/tilesets/metatiles.h for gMetatileAttributes_ declaration lines and infers the attribute byte size from the C type used:
const u16 -> 2 bytes (pokeemerald / pokeruby)const u32 -> 4 bytes (pokefirered)The file is read lazily on first access and the result is cached.
Definition at line 29 of file metatiles_header_provider.hpp.
|
inlineexplicit |
Constructs a MetatilesHeaderProvider.
| project_root | The root directory of the decomp project |
| format | A pointer to the TextFormatter to use for error messages |
Definition at line 37 of file metatiles_header_provider.hpp.
|
overridevirtual |
Reimplemented from porytiles::ConfigProvider.
Definition at line 81 of file metatiles_header_provider.cpp.
|
overridevirtual |
Gets the name of this ConfigProvider, useful for diagnostic purposes.
Implements porytiles::ConfigProvider.
Definition at line 75 of file metatiles_header_provider.cpp.