Ream v0.1.0-1
C++ graphics library for Linux
Loading...
Searching...
No Matches
Public Member Functions | List of all members
RRSPass Class Reference

Raster (software) implementation of RPass. More...

#include <RRSPass.h>

+ Inheritance diagram for RRSPass:

Public Member Functions

 ~RRSPass () noexcept
 Destroys the render pass.
 
SkCanvas * getCanvas (bool sync=true) const noexcept override
 Returns the surface's SkCanvas. Implements RPass::getCanvas().
 
RPaintergetPainter (bool sync=true) const noexcept override
 Returns the pass's RPainter. Implements RPass::getPainter().
 
void setGeometry (const RSurfaceGeometry &geometry) noexcept override
 Applies the geometry to both the RPainter and the SkCanvas matrix. Implements RPass::setGeometry().
 
- Public Member Functions inherited from RPass
 ~RPass () noexcept
 Destroys the render pass.
 
CZBitset< RPassCap > caps () const noexcept
 Returns the capabilities enabled for this pass.
 
void resetGeometry () noexcept
 Resets the geometry to the default RSurface geometry.
 
const RSurfaceGeometrygeometry () const noexcept
 Returns the current geometry for this pass.
 
std::shared_ptr< RSurfacesurface () const noexcept
 Returns the destination surface being rendered into.
 
void save () noexcept
 Saves the state of both RPainter and SkCanvas.
 
void restore () noexcept
 Restores the most recently saved state of RPainter and SkCanvas.
 
- Public Member Functions inherited from RObject
 RObject ()=default
 Constructs a default RObject.
 

Detailed Description

Raster (software) implementation of RPass.

RRSPass is the render pass used by the CPU software backend. Since Raster surfaces are backed by an SkSurface, both the RPainter and SkCanvas returned here operate directly on that surface, and no GPU synchronization is required (the sync arguments are ignored).

Constructor & Destructor Documentation

◆ ~RRSPass()

~RRSPass ( )
noexcept

Destroys the render pass.

Member Function Documentation

◆ getCanvas()

SkCanvas * getCanvas ( bool  sync = true) const
overridevirtualnoexcept

Returns the surface's SkCanvas. Implements RPass::getCanvas().

Note
The sync argument is ignored by the Raster backend.
Returns
The canvas, or nullptr if the pass has no SkSurface.

Implements RPass.

◆ getPainter()

RPainter * getPainter ( bool  sync = true) const
overridevirtualnoexcept

Returns the pass's RPainter. Implements RPass::getPainter().

Note
The sync argument is ignored by the Raster backend.

Implements RPass.

◆ setGeometry()

void setGeometry ( const RSurfaceGeometry geometry)
overridevirtualnoexcept

Applies the geometry to both the RPainter and the SkCanvas matrix. Implements RPass::setGeometry().

Implements RPass.