roo_display
API Documentation for roo_display
Loading...
Searching...
No Matches
roo_display::DrawableRawStreamable< RawStreamable > Class Template Reference

#include <raw_streamable.h>

Inheritance diagram for roo_display::DrawableRawStreamable< RawStreamable >:
[legend]
Collaboration diagram for roo_display::DrawableRawStreamable< RawStreamable >:
[legend]

Public Member Functions

 DrawableRawStreamable (RawStreamable streamable)
 
 DrawableRawStreamable (DrawableRawStreamable &&other)
 
Box extents () const override
 Return the bounding box encompassing all pixels that need to be drawn.
 
Box anchorExtents () const override
 Return the bounds used for alignment.
 
const RawStreamablecontents () const
 
std::unique_ptr< PixelStreamcreateStream () const override
 Create a stream covering the full extents().
 
std::unique_ptr< PixelStreamcreateStream (const Box &bounds) const override
 Create a stream for the given clipped bounds.
 
decltype(std::declval< RawStreamable >().createRawStream()) createRawStream () const
 
- Public Member Functions inherited from roo_display::Streamable
virtual TransparencyMode getTransparencyMode () const
 Return the transparency mode for pixels in this stream.
 
- Public Member Functions inherited from roo_display::Drawable
virtual ~Drawable ()
 

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.
 

Detailed Description

template<typename RawStreamable>
class roo_display::DrawableRawStreamable< RawStreamable >

Definition at line 280 of file raw_streamable.h.

Constructor & Destructor Documentation

◆ DrawableRawStreamable() [1/2]

template<typename RawStreamable >
roo_display::DrawableRawStreamable< RawStreamable >::DrawableRawStreamable ( RawStreamable  streamable)
inline

Definition at line 282 of file raw_streamable.h.

◆ DrawableRawStreamable() [2/2]

template<typename RawStreamable >
roo_display::DrawableRawStreamable< RawStreamable >::DrawableRawStreamable ( DrawableRawStreamable< RawStreamable > &&  other)
inline

Definition at line 285 of file raw_streamable.h.

Member Function Documentation

◆ anchorExtents()

template<typename RawStreamable >
Box roo_display::DrawableRawStreamable< RawStreamable >::anchorExtents ( ) const
inlineoverridevirtual

Return the bounds used for alignment.

Defaults to extents(). Some drawables (notably text labels) may want different alignment bounds.

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

Reimplemented from roo_display::Drawable.

Definition at line 290 of file raw_streamable.h.

◆ contents()

Definition at line 292 of file raw_streamable.h.

◆ createRawStream()

template<typename RawStreamable >
decltype(std::declval< RawStreamable >().createRawStream()) roo_display::DrawableRawStreamable< RawStreamable >::createRawStream ( ) const
inline

Definition at line 306 of file raw_streamable.h.

◆ createStream() [1/2]

template<typename RawStreamable >
std::unique_ptr< PixelStream > roo_display::DrawableRawStreamable< RawStreamable >::createStream ( ) const
inlineoverridevirtual

Create a stream covering the full extents().

Implements roo_display::Streamable.

Definition at line 294 of file raw_streamable.h.

◆ createStream() [2/2]

template<typename RawStreamable >
std::unique_ptr< PixelStream > roo_display::DrawableRawStreamable< RawStreamable >::createStream ( const Box clip_box) const
inlineoverridevirtual

Create a stream for the given clipped bounds.

Implements roo_display::Streamable.

Definition at line 300 of file raw_streamable.h.

References roo_display::CreateClippedRawStreamFor().

◆ extents()

template<typename RawStreamable >
Box roo_display::DrawableRawStreamable< RawStreamable >::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 288 of file raw_streamable.h.


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