Porytiles
Loading...
Searching...
No Matches
anim_decompiler.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <set>
4#include <string>
5
6#include "gsl/pointers"
7
18
19namespace porytiles {
20
21// Forward declaration for backporting mangled tiles
22class PorymapTilesetComponent;
23
43 public:
45 gsl::not_null<const DomainConfig *> config,
46 gsl::not_null<const UserDiagnostics *> diag,
47 gsl::not_null<const TilePrinter *> tile_printer,
48 gsl::not_null<const PalettePrinter *> palette_printer)
49 : config_{config}, diag_{diag}, tile_printer_{tile_printer}, palette_printer_{palette_printer}
50 {
51 }
52
78 const std::string &tileset_name,
79 const Animation<IndexPixel> &anim,
80 const std::set<PixelTile<Rgba32>> &inter_anim_canonical_tiles,
81 PorymapTilesetComponent &porymap_component) const;
82
83 private:
84 const DomainConfig *config_;
85 const UserDiagnostics *diag_;
86 const TilePrinter *tile_printer_;
87 const PalettePrinter *palette_printer_;
88};
89
90} // namespace porytiles
Decompiles indexed animation tiles to RGBA format.
ChainableResult< Animation< Rgba32 > > decompile_animation(const std::string &tileset_name, const Animation< IndexPixel > &anim, const std::set< PixelTile< Rgba32 > > &inter_anim_canonical_tiles, PorymapTilesetComponent &porymap_component) const
Decompiles an IndexPixel animation to Rgba32 format.
AnimDecompiler(gsl::not_null< const DomainConfig * > config, gsl::not_null< const UserDiagnostics * > diag, gsl::not_null< const TilePrinter * > tile_printer, gsl::not_null< const PalettePrinter * > palette_printer)
A complete tileset animation with name, configuration, and frame data.
Definition animation.hpp:89
A result type that maintains a chainable sequence of errors for debugging and error reporting.
Interface that defines a complete domain layer configuration.
A collection of printer functions for the Palette and related types.
An 8x8 tile backed by literal-array-based per-pixel storage of an arbitrary pixel type.
A collection of printer functions for various tile types.
Abstract class for structured error reporting and diagnostic output.