Porytiles
Loading...
Searching...
No Matches
porytiles::TilesetCompiler Class Reference

Service that compiles a Tileset (primary or secondary). More...

#include <tileset_compiler.hpp>

Public Member Functions

 TilesetCompiler (gsl::not_null< const DomainConfig * > config, gsl::not_null< const TextFormatter * > format, gsl::not_null< const UserDiagnostics * > diag, gsl::not_null< const TilePrinter * > tile_printer, gsl::not_null< const PalettePrinter * > pal_printer)
 
ChainableResult< std::unique_ptr< Tileset > > compile (const Tileset &tileset, bool is_secondary=false, const Tileset *paired_primary=nullptr) const
 Compiles the given Tileset, producing a new Tileset with compiled Porymap assets.
 

Detailed Description

Service that compiles a Tileset (primary or secondary).

Supports three compilation modes via the is_secondary and paired_primary parameters:

  • Primary: is_secondary is false (the default). paired_primary is ignored.
  • Secondary with paired primary: is_secondary is true, paired_primary points to a compiled primary Tileset. The compiler uses the paired primary's tiles and palettes to produce correct global indices.
  • Standalone secondary: is_secondary is true, paired_primary is nullptr. The compiler produces secondary compilation output without referencing any primary tileset data.

Definition at line 28 of file tileset_compiler.hpp.

Constructor & Destructor Documentation

◆ TilesetCompiler()

porytiles::TilesetCompiler::TilesetCompiler ( gsl::not_null< const DomainConfig * >  config,
gsl::not_null< const TextFormatter * >  format,
gsl::not_null< const UserDiagnostics * >  diag,
gsl::not_null< const TilePrinter * >  tile_printer,
gsl::not_null< const PalettePrinter * >  pal_printer 
)
inlineexplicit

Definition at line 30 of file tileset_compiler.hpp.

Member Function Documentation

◆ compile()

ChainableResult< std::unique_ptr< Tileset > > porytiles::TilesetCompiler::compile ( const Tileset tileset,
bool  is_secondary = false,
const Tileset paired_primary = nullptr 
) const

Compiles the given Tileset, producing a new Tileset with compiled Porymap assets.

Parameters
tilesetThe Tileset to compile.
is_secondaryWhether this is a secondary tileset compilation.
paired_primaryThe compiled paired primary Tileset for secondary compilation, or nullptr.
Returns
A new compiled Tileset on success, or an error chain on failure.

Definition at line 2326 of file tileset_compiler.cpp.


The documentation for this class was generated from the following files: