roo_display
API Documentation for roo_display
Loading...
Searching...
No Matches
roo_display::SimpleTiledRasterizable< Getter > Class Template Reference

"Infinite" rasterizable background by tiling a finite raster. More...

#include <rasterizable.h>

Inheritance diagram for roo_display::SimpleTiledRasterizable< Getter >:
[legend]
Collaboration diagram for roo_display::SimpleTiledRasterizable< Getter >:
[legend]

Public Member Functions

 SimpleTiledRasterizable (const Box &extents, Getter getter, TransparencyMode transparency)
 
 SimpleTiledRasterizable (const Box &extents, Getter getter, TransparencyMode transparency, int16_t x_offset, int16_t y_offset)
 
Box extents () const override
 Return the bounding box encompassing all pixels that need to be drawn.
 
void readColors (const int16_t *x, const int16_t *y, uint32_t count, Color *result) const override
 Read colors for the given points.
 
TransparencyMode getTransparencyMode () const override
 Return the transparency mode for pixels in this stream.
 
- Public Member Functions inherited from roo_display::Rasterizable
void readColorsMaybeOutOfBounds (const int16_t *x, const int16_t *y, uint32_t count, Color *result, Color out_of_bounds_color=color::Transparent) const
 Read colors for points that may be out of bounds.
 
virtual bool readColorRect (int16_t xMin, int16_t yMin, int16_t xMax, int16_t yMax, Color *result) const
 Read colors for a rectangle.
 
std::unique_ptr< PixelStreamcreateStream () const override
 Default createStream() using readColors().
 
std::unique_ptr< PixelStreamcreateStream (const Box &bounds) const override
 Default createStream() for a clipped box using readColors().
 
- Public Member Functions inherited from roo_display::Drawable
virtual ~Drawable ()
 
virtual Box anchorExtents () const
 Return the bounds used for alignment.
 

Additional Inherited Members

- Static Public Member Functions inherited from roo_display::Drawable
static const DrawableEmpty ()
 A singleton representing a no-op drawable with no bounding box.
 
- Protected Member Functions inherited from roo_display::Rasterizable
void drawTo (const Surface &s) const override
 Default drawTo() using readColors().
 

Detailed Description

template<typename Getter>
class roo_display::SimpleTiledRasterizable< Getter >

"Infinite" rasterizable background by tiling a finite raster.

Definition at line 92 of file rasterizable.h.

Constructor & Destructor Documentation

◆ SimpleTiledRasterizable() [1/2]

template<typename Getter >
roo_display::SimpleTiledRasterizable< Getter >::SimpleTiledRasterizable ( const Box extents,
Getter  getter,
TransparencyMode  transparency 
)
inline

Definition at line 94 of file rasterizable.h.

◆ SimpleTiledRasterizable() [2/2]

template<typename Getter >
roo_display::SimpleTiledRasterizable< Getter >::SimpleTiledRasterizable ( const Box extents,
Getter  getter,
TransparencyMode  transparency,
int16_t  x_offset,
int16_t  y_offset 
)
inline

Definition at line 98 of file rasterizable.h.

Member Function Documentation

◆ extents()

template<typename Getter >
Box roo_display::SimpleTiledRasterizable< Getter >::extents ( ) const
inlineoverridevirtual

Return the bounding box encompassing all pixels that need to be drawn.

This method is called during a transaction and must not block or perform I/O.

Implements roo_display::Drawable.

Definition at line 107 of file rasterizable.h.

References roo_display::Box::MaximumBox().

◆ getTransparencyMode()

template<typename Getter >
TransparencyMode roo_display::SimpleTiledRasterizable< Getter >::getTransparencyMode ( ) const
inlineoverridevirtual

Return the transparency mode for pixels in this stream.

This is an optimization hint. The default is TransparencyMode::kFull, which is always safe. If pixels are guaranteed fully opaque or 1-bit alpha, return TransparencyMode::kNone or TransparencyMode::kCrude to enable faster blending paths.

Reimplemented from roo_display::Streamable.

Definition at line 120 of file rasterizable.h.

◆ readColors()

template<typename Getter >
void roo_display::SimpleTiledRasterizable< Getter >::readColors ( const int16_t x,
const int16_t y,
uint32_t  count,
Color result 
) const
inlineoverridevirtual

Read colors for the given points.

The caller must ensure all points are within bounds.

Implements roo_display::Rasterizable.

Definition at line 109 of file rasterizable.h.

References roo_display::Box::height(), roo_display::Box::width(), roo_display::Box::xMin(), and roo_display::Box::yMin().


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