|
Porytiles
|
Validation functions for tileset compile job input. More...
#include <map>#include <set>#include <string>#include <vector>#include "gsl/pointers"#include "porytiles/domain/algorithms/diagnostic_stencils.hpp"#include "porytiles/domain/config/domain_config.hpp"#include "porytiles/domain/models/animation.hpp"#include "porytiles/domain/models/metatile.hpp"#include "porytiles/domain/services/palette_printer.hpp"#include "porytiles/domain/services/tile_printer.hpp"#include "porytiles/utilities/filesystem_utils.hpp"#include "porytiles/utilities/result/chainable_result.hpp"#include "porytiles/utilities/string_utils.hpp"#include "porytiles/xcut/config/unwrap_config.hpp"#include "porytiles/xcut/diagnostics/user_diagnostics.hpp"Go to the source code of this file.
Classes | |
| struct | porytiles::TilesetCompileValidatorServices |
| Parameter store for common services used by tileset compile validators. More... | |
Namespaces | |
| namespace | porytiles |
| namespace | porytiles::details |
Functions | |
| void | porytiles::details::report_validation_error_in_metatile (const TilesetCompileValidatorServices &services, const Metatile< Rgba32 > &metatile, std::size_t metatile_index, std::size_t internal_tile_index, std::size_t row, std::size_t col, const std::string &diagnostic_code, const std::string &error_message, const Rgba32 &extrinsic_transparency) |
| Reports a validation error at a specific pixel location within a metatile. | |
| void | porytiles::details::report_validation_error_in_anim (const TilesetCompileValidatorServices &services, const PixelTile< Rgba32 > &tile, const std::string &anim_name, const std::string &frame_name, std::size_t internal_tile_index, std::size_t row, std::size_t col, const std::string &diagnostic_code, const std::string &error_message, const Rgba32 &extrinsic_transparency) |
| Reports a validation error at a specific pixel location within an animation frame tile. | |
| void | porytiles::details::report_validation_error_in_anim_tile (const TilesetCompileValidatorServices &services, const PixelTile< Rgba32 > &tile, const std::string &anim_name, const std::string &frame_name, std::size_t internal_tile_index, const std::string &diagnostic_code, const std::string &error_message, const Rgba32 &extrinsic_transparency) |
| Reports a validation error for an entire animation frame tile. | |
| void | porytiles::details::report_color_counts (const std::string &tag, const TilesetCompileValidatorServices &services, const std::map< Rgba32, unsigned int > &color_counts) |
| Emits a diagnostic note displaying the count of each unique color. | |
| ChainableResult< void > | porytiles::validate_metatile_count (const TilesetCompileValidatorServices &services, const std::string &tileset_name, bool is_secondary, const std::vector< Metatile< Rgba32 > > &metatiles) |
| Validates that the metatile count does not exceed the configured limit. | |
| ChainableResult< void > | porytiles::validate_porymap_pal (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const Palette< Rgba32, pal::max_size > &pal, std::size_t pal_index) |
| Validates a Porymap palette for correctness according to GBA hardware constraints. | |
| ChainableResult< void > | porytiles::validate_porytiles_pal (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const Palette< Rgba32, pal::max_size > &pal, std::size_t pal_index) |
| Validates a user-specified Porytiles override palette for correctness. | |
| ChainableResult< void > | porytiles::validate_pal_hint (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const PaletteHint &hint) |
| Validates a user-specified palette hint for correctness. | |
| ChainableResult< void > | porytiles::validate_alpha_channels (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const std::vector< Metatile< Rgba32 > > &metatiles, const std::map< std::string, Animation< Rgba32 > > &anims) |
| Validates that all pixel alpha channels in provided input have valid values. | |
| ChainableResult< void > | porytiles::validate_layer_mode (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const std::vector< Metatile< Rgba32 > > &metatiles) |
| Validates that metatiles conform to the configured layer mode. | |
| ChainableResult< void > | porytiles::validate_tile_color_count (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const std::vector< Metatile< Rgba32 > > &metatiles, const std::map< std::string, Animation< Rgba32 > > &anims) |
| Validates that each individual tile does not exceed the per-tile color limit. | |
| ChainableResult< void > | porytiles::validate_global_color_count (const TilesetCompileValidatorServices &services, const std::string &tileset_name, bool is_secondary, const std::vector< Metatile< Rgba32 > > &metatiles, const std::map< std::string, Animation< Rgba32 > > &anims, const std::array< std::optional< Palette< Rgba32, pal::max_size > >, pal::num_pals > &porytiles_pals, const std::vector< PaletteHint > &hints) |
| Validates that the total unique color count across all input does not exceed the global limit. | |
| ChainableResult< void > | porytiles::validate_precision_loss (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const std::vector< Metatile< Rgba32 > > &metatiles, const std::map< std::string, Animation< Rgba32 > > &anims, const std::array< std::optional< Palette< Rgba32, pal::max_size > >, pal::num_pals > &porytiles_pals, const std::vector< PaletteHint > &hints, const std::optional< std::array< Palette< Rgba32, pal::max_size >, pal::num_pals > > &porymap_pals) |
| Validates that no colors will suffer unacceptable precision loss during GBA color conversion. | |
| ChainableResult< void > | porytiles::validate_anim_frames (const TilesetCompileValidatorServices &services, const std::string &tileset_name, const std::map< std::string, Animation< Rgba32 > > &anims) |
| Validates animation frames for correctness according to tileset compilation constraints. | |
Validation functions for tileset compile job input.
This module provides validation functionality for tileset compile job input.
Definition in file tileset_compile_validators.hpp.