OpenTTD Source
20240919-master-gdf0233f4c2
|
Go to the documentation of this file.
10 #ifndef BLITTER_8BPP_OPTIMIZED_HPP
11 #define BLITTER_8BPP_OPTIMIZED_HPP
28 std::string_view
GetName()
override {
return "8bpp-optimized"; }
Data stored about a (single) sprite.
BlitterMode
The modes of blitting we can do.
How all blitters should look like.
@ ZOOM_LVL_END
End for iteration.
The base factory, keeping track of all blitters.
void Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomLevel zoom) override
Draw an image to the screen, given an amount of params defined above.
8bpp blitter optimised for speed.
Interface for something that can allocate memory for a sprite.
std::array< Sprite, ZOOM_LVL_END > SpriteCollection
Type defining a collection of sprites, one for each zoom level.
Factory for the 8bpp blitter optimised for speed.
Base for all 8bpp blitters.
Sprite * Encode(const SpriteLoader::SpriteCollection &sprite, SpriteAllocator &allocator) override
Convert a sprite from the loader to our own format.
BlitterFactory(const char *name, const char *description, bool usable=true)
Construct the blitter, and register it.
Blitter * CreateInstance() override
Create an instance of this Blitter-class.
std::string_view GetName() override
Get the name of the blitter, the same as the Factory-instance returns.
uint32_t offset[ZOOM_LVL_END]
Offsets (from .data) to streams for different zoom levels.
Parameters related to blitting.
Data structure describing a sprite.
ZoomLevel
All zoom levels we know.
uint8_t data[]
Data, all zoomlevels.