|
LibreOffice Module canvas (master) 1
|
Output module interface for backend render implementations. More...
#include <irendermodule.hxx>
Public Types | |
| enum class | PrimitiveType { Unknown , Triangle , Quad } |
| Type of primitive passed to the render module via pushVertex() More... | |
Public Member Functions | |
| virtual | ~IRenderModule () |
| virtual void | lock () const =0 |
| Lock rendermodule against concurrent access. More... | |
| virtual void | unlock () const =0 |
| Unlock rendermodule for concurrent access. More... | |
| virtual ::basegfx::B2IVector | getPageSize ()=0 |
| Maximal size of VRAM pages available. More... | |
| virtual std::shared_ptr< ISurface > | createSurface (const ::basegfx::B2IVector &surfaceSize)=0 |
| Create a (possibly hardware-accelerated) surface. More... | |
| virtual void | beginPrimitive (PrimitiveType eType)=0 |
| Begin rendering the given primitive. More... | |
| virtual void | endPrimitive ()=0 |
| Finish rendering a primitive. More... | |
| virtual void | pushVertex (const Vertex &vertex)=0 |
| Add given vertex to current primitive. More... | |
| virtual bool | isError ()=0 |
| Query error status. More... | |
Output module interface for backend render implementations.
Implement this interface for each operating system- or library-specific rendering backend, which needs coupling with the canvas rendering framework (which can be shared between all backend implementations).
Definition at line 48 of file irendermodule.hxx.
|
strong |
Type of primitive passed to the render module via pushVertex()
| Enumerator | |
|---|---|
| Unknown | |
| Triangle | |
| Quad | |
Definition at line 53 of file irendermodule.hxx.
|
inlinevirtual |
Definition at line 60 of file irendermodule.hxx.
|
pure virtual |
Begin rendering the given primitive.
Each beginPrimitive() call must be matched with an endPrimitive() call.
|
pure virtual |
Create a (possibly hardware-accelerated) surface.
|
pure virtual |
Finish rendering a primitive.
Each beginPrimitive() call must be matched with an endPrimitive() call.
|
pure virtual |
Maximal size of VRAM pages available.
This is typically the maximum texture size of the hardware, or some arbitrary limit if the backend is software.
|
pure virtual |
Query error status.
|
pure virtual |
Lock rendermodule against concurrent access.
|
pure virtual |
Add given vertex to current primitive.
After issuing a beginPrimitive(), each pushVertex() adds a vertex to the active primitive.
|
pure virtual |
Unlock rendermodule for concurrent access.