|
roo_display
API Documentation for roo_display
|
Multi-layer stack of streamables composited in order. More...
#include <streamable_stack.h>
Data Structures | |
| class | Input |
| An input layer in the stack. More... | |
Public Member Functions | |
| StreamableStack (const Box &extents) | |
| Create a stack with the given extents. | |
| Input & | addInput (const Streamable *input) |
| Add an input using its full extents. | |
| Input & | addInput (const Streamable *input, Box clip_box) |
Add an input clipped to clip_box. | |
| Input & | addInput (const Streamable *input, uint16_t dx, uint16_t dy) |
| Add an input with an offset. | |
| Input & | addInput (const Streamable *input, Box clip_box, uint16_t dx, uint16_t dy) |
| Add an input with an offset and clip box. | |
| Box | extents () const override |
| Return the overall extents of the stack. | |
| Box | anchorExtents () const override |
| Return the bounds used for alignment. | |
| Box | naturalExtents () |
| Return minimal extents that fit all inputs without clipping. | |
| std::unique_ptr< PixelStream > | createStream () const override |
| Create a stream for the full stack. | |
| std::unique_ptr< PixelStream > | createStream (const Box &clip_box) const override |
| Create a stream for a clipped box. | |
| void | setExtents (const Box &extents) |
| Set the stack extents. | |
| void | setAnchorExtents (const Box &anchor_extents) |
| Set anchor extents used for alignment. | |
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 Drawable * | Empty () |
| A singleton representing a no-op drawable with no bounding box. | |
Multi-layer stack of streamables composited in order.
Definition at line 12 of file streamable_stack.h.
Create a stack with the given extents.
Definition at line 64 of file streamable_stack.h.
|
inline |
Add an input using its full extents.
Definition at line 68 of file streamable_stack.h.
|
inline |
Add an input clipped to clip_box.
Definition at line 74 of file streamable_stack.h.
References roo_display::Box::Intersect().
|
inline |
Add an input with an offset and clip box.
Definition at line 86 of file streamable_stack.h.
References roo_display::Box::Intersect().
|
inline |
Add an input with an offset.
Definition at line 80 of file streamable_stack.h.
|
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 96 of file streamable_stack.h.
|
overridevirtual |
Create a stream for the full stack.
Implements roo_display::Streamable.
Definition at line 759 of file streamable_stack.cpp.
References roo_display::Box::area(), extents(), and roo_display::Box::Intersect().
|
overridevirtual |
Create a stream for a clipped box.
Implements roo_display::Streamable.
Definition at line 780 of file streamable_stack.cpp.
References roo_display::Box::area(), extents(), and roo_display::Box::Intersect().
|
inlineoverridevirtual |
Return the overall extents of the stack.
Implements roo_display::Drawable.
Definition at line 94 of file streamable_stack.h.
Referenced by createStream(), createStream(), naturalExtents(), and setExtents().
|
inline |
Return minimal extents that fit all inputs without clipping.
Definition at line 99 of file streamable_stack.h.
References roo_display::Box::Extent(), and extents().
Set anchor extents used for alignment.
Definition at line 118 of file streamable_stack.h.