|
Porytiles
|
The schema-driven service graph shared by the compile, create, import, and decompile commands. More...
#include <tileset_command_setup.hpp>
Public Member Functions | |
| TilesetCommandServices (TilesetCommandEnv &env, ResolvedAttributeContext context) | |
| TilesetCommandServices (const TilesetCommandServices &)=delete | |
| TilesetCommandServices & | operator= (const TilesetCommandServices &)=delete |
| TilesetCommandServices (TilesetCommandServices &&)=delete | |
| TilesetCommandServices & | operator= (TilesetCommandServices &&)=delete |
The schema-driven service graph shared by the compile, create, import, and decompile commands.
Consumes the resolved attribute context (the attribute layout is a project-global property, so every tileset a command touches decodes with the same schema) and wires the services that consume it: the attributes CSV loader, the artifact reader/writer, the tileset repo, the tileset manager, and the compiler. This is the single home for that wiring so the commands cannot drift apart.
Declaration order is dependency order: the resolved schema and its provider map come before the artifact reader/writer, manager, and compiler, which hold pointers into them. That makes the graph self-pinning: not copyable, not movable, constructed once on the stack after the env.
Construction cannot fail: the fallible schema resolution happens in resolve_attribute_context, whose error the command wraps with its own context before this graph is built.
Definition at line 224 of file tileset_command_setup.hpp.
|
inline |
Definition at line 226 of file tileset_command_setup.hpp.
|
delete |
|
delete |
|
delete |
|
delete |
| AnimCodeGenerator porytiles::TilesetCommandServices::anim_code_generator {} |
Definition at line 304 of file tileset_command_setup.hpp.
| AnimCodeParser porytiles::TilesetCommandServices::anim_code_parser |
Definition at line 303 of file tileset_command_setup.hpp.
| AnimJsonParser porytiles::TilesetCommandServices::anim_json_parser |
Definition at line 302 of file tileset_command_setup.hpp.
| ProjectTilesetArtifactReader porytiles::TilesetCommandServices::artifact_reader |
Definition at line 317 of file tileset_command_setup.hpp.
| ProjectTilesetArtifactWriter porytiles::TilesetCommandServices::artifact_writer |
Definition at line 318 of file tileset_command_setup.hpp.
| AttributesCsvLoader porytiles::TilesetCommandServices::attributes_csv_loader |
Definition at line 315 of file tileset_command_setup.hpp.
| ProjectArtifactChecksumProvider porytiles::TilesetCommandServices::checksum_provider |
Definition at line 319 of file tileset_command_setup.hpp.
| TilesetCompiler porytiles::TilesetCommandServices::compiler |
Definition at line 321 of file tileset_command_setup.hpp.
| IncbinDeclarationAppender porytiles::TilesetCommandServices::incbin_appender |
Definition at line 308 of file tileset_command_setup.hpp.
| JascPaletteLoader porytiles::TilesetCommandServices::jasc_loader |
Definition at line 300 of file tileset_command_setup.hpp.
| JascPaletteSaver porytiles::TilesetCommandServices::jasc_saver |
Definition at line 301 of file tileset_command_setup.hpp.
| ProjectTilesetArtifactKeyProvider porytiles::TilesetCommandServices::key_provider |
Definition at line 316 of file tileset_command_setup.hpp.
| ProjectLayoutMetadataProvider porytiles::TilesetCommandServices::layout_metadata_provider |
Definition at line 306 of file tileset_command_setup.hpp.
| ProjectTilesetMetadataProvider porytiles::TilesetCommandServices::metadata_provider |
Definition at line 305 of file tileset_command_setup.hpp.
| ProjectTilesetMetadataWriter porytiles::TilesetCommandServices::metadata_writer |
Definition at line 307 of file tileset_command_setup.hpp.
| std::unique_ptr<PalettePrinter> porytiles::TilesetCommandServices::palette_printer |
Definition at line 295 of file tileset_command_setup.hpp.
| PngIndexedImageLoader porytiles::TilesetCommandServices::png_indexed_loader {} |
Definition at line 297 of file tileset_command_setup.hpp.
| PngIndexedImageSaver porytiles::TilesetCommandServices::png_indexed_saver {} |
Definition at line 299 of file tileset_command_setup.hpp.
| PngRgbaImageLoader porytiles::TilesetCommandServices::png_rgba_loader {} |
Definition at line 296 of file tileset_command_setup.hpp.
| PngRgbaImageSaver porytiles::TilesetCommandServices::png_rgba_saver {} |
Definition at line 298 of file tileset_command_setup.hpp.
| ProviderMap porytiles::TilesetCommandServices::provider_map |
Definition at line 313 of file tileset_command_setup.hpp.
| TilesetRepo porytiles::TilesetCommandServices::repo |
Definition at line 320 of file tileset_command_setup.hpp.
| LoadedMetatileAttributeSchema porytiles::TilesetCommandServices::resolved |
Definition at line 312 of file tileset_command_setup.hpp.
| std::unique_ptr<TilePrinter> porytiles::TilesetCommandServices::tile_printer |
Definition at line 294 of file tileset_command_setup.hpp.
| ProjectTilesetAnimsModifier porytiles::TilesetCommandServices::tileset_anims_modifier |
Definition at line 309 of file tileset_command_setup.hpp.
| ProjectPorytilesTilesetManager porytiles::TilesetCommandServices::tileset_manager |
Definition at line 314 of file tileset_command_setup.hpp.