Cumulia Illustrator Rendering Engine v1.1.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
cil::Renderer Class Reference

The Renderer class provides a comprehensive set of interfaces for managing and rendering scene. More...

#include <renderer.h>

Public Member Functions

 Renderer ()
 
virtual ~Renderer ()
 
void makeCurrent ()
 
virtual void render (const std::shared_ptr< Scene > &scene)
 Renders the given scene.
 
std::shared_ptr< Image2Dread (const std::shared_ptr< ImageBuffer > &buffer)
 Reads data from the given image buffer.
 
void add (const std::shared_ptr< Scene > &scene)
 Adds the given object.
 
void add (const std::shared_ptr< Pass > &pass)
 
void add (const std::shared_ptr< Node > &node)
 
void add (const std::shared_ptr< Mesh > &mesh)
 
void add (const std::shared_ptr< Target > &target)
 
void add (const std::shared_ptr< Primitive > &primitive)
 
void add (const std::shared_ptr< Material > &material)
 
void add (const std::shared_ptr< Geometry > &geometry)
 
void add (const std::shared_ptr< Program > &program)
 
void add (const std::shared_ptr< Texture > &texture)
 
void add (const std::shared_ptr< Vertices > &vertices)
 
void add (const std::shared_ptr< ElementIndices > &indices)
 
void add (const std::shared_ptr< Source > &source)
 
void add (const std::shared_ptr< Image > &image)
 
void add (const std::shared_ptr< Sampler > &sampler)
 
void add (const std::shared_ptr< ArrayBuffer > &buffer)
 
void remove (const std::shared_ptr< Scene > &scene)
 Removes the given object.
 
void remove (const std::shared_ptr< Pass > &pass)
 
void remove (const std::shared_ptr< Node > &node)
 
void remove (const std::shared_ptr< Mesh > &mesh)
 
void remove (const std::shared_ptr< Target > &target)
 
void remove (const std::shared_ptr< Primitive > &primitive)
 
void remove (const std::shared_ptr< Material > &material)
 
void remove (const std::shared_ptr< Geometry > &geometry)
 
void remove (const std::shared_ptr< Program > &program)
 
void remove (const std::shared_ptr< Texture > &texture)
 
void remove (const std::shared_ptr< Vertices > &vertices)
 
void remove (const std::shared_ptr< ElementIndices > &indices)
 
void remove (const std::shared_ptr< Source > &source)
 
void remove (const std::shared_ptr< Image > &image)
 
void remove (const std::shared_ptr< Sampler > &sampler)
 
void remove (const std::shared_ptr< ArrayBuffer > &buffer)
 
void update (const std::shared_ptr< Scene > &scene)
 Updates the given object.
 
void update (const std::shared_ptr< Pass > &pass)
 
void update (const std::shared_ptr< Node > &node)
 
void update (const std::shared_ptr< Mesh > &mesh)
 
void update (const std::shared_ptr< Target > &target)
 
void update (const std::shared_ptr< Primitive > &primitive)
 
void update (const std::shared_ptr< Material > &material)
 
void update (const std::shared_ptr< Geometry > &geometry)
 
void update (const std::shared_ptr< Program > &program)
 
void update (const std::shared_ptr< Texture > &texture)
 
void update (const std::shared_ptr< Vertices > &vertices)
 
void update (const std::shared_ptr< ElementIndices > &indices)
 
void update (const std::shared_ptr< Source > &source)
 
void update (const std::shared_ptr< Image > &image)
 
void update (const std::shared_ptr< Sampler > &sampler)
 
void update (const std::shared_ptr< ArrayBuffer > &buffer)
 
void clear ()
 Clears.
 
void free (bool unused=false)
 Frees resources used by the renderer, ensuring that the renderer is properly terminated.
 

Protected Attributes

std::shared_ptr< RenderContextrenderContext
 

Detailed Description

The Renderer class provides a comprehensive set of interfaces for managing and rendering scene.

Constructor & Destructor Documentation

◆ Renderer()

cil::Renderer::Renderer ( )

◆ ~Renderer()

virtual cil::Renderer::~Renderer ( )
virtual

Member Function Documentation

◆ add() [1/16]

void cil::Renderer::add ( const std::shared_ptr< ArrayBuffer > & buffer)

◆ add() [2/16]

void cil::Renderer::add ( const std::shared_ptr< ElementIndices > & indices)

◆ add() [3/16]

void cil::Renderer::add ( const std::shared_ptr< Geometry > & geometry)

◆ add() [4/16]

void cil::Renderer::add ( const std::shared_ptr< Image > & image)

◆ add() [5/16]

void cil::Renderer::add ( const std::shared_ptr< Material > & material)

◆ add() [6/16]

void cil::Renderer::add ( const std::shared_ptr< Mesh > & mesh)

◆ add() [7/16]

void cil::Renderer::add ( const std::shared_ptr< Node > & node)

◆ add() [8/16]

void cil::Renderer::add ( const std::shared_ptr< Pass > & pass)

◆ add() [9/16]

void cil::Renderer::add ( const std::shared_ptr< Primitive > & primitive)

◆ add() [10/16]

void cil::Renderer::add ( const std::shared_ptr< Program > & program)

◆ add() [11/16]

void cil::Renderer::add ( const std::shared_ptr< Sampler > & sampler)

◆ add() [12/16]

void cil::Renderer::add ( const std::shared_ptr< Scene > & scene)

Adds the given object.

◆ add() [13/16]

void cil::Renderer::add ( const std::shared_ptr< Source > & source)

◆ add() [14/16]

void cil::Renderer::add ( const std::shared_ptr< Target > & target)

◆ add() [15/16]

void cil::Renderer::add ( const std::shared_ptr< Texture > & texture)

◆ add() [16/16]

void cil::Renderer::add ( const std::shared_ptr< Vertices > & vertices)

◆ clear()

void cil::Renderer::clear ( )

Clears.

◆ free()

void cil::Renderer::free ( bool unused = false)

Frees resources used by the renderer, ensuring that the renderer is properly terminated.

◆ makeCurrent()

void cil::Renderer::makeCurrent ( )

◆ read()

std::shared_ptr< Image2D > cil::Renderer::read ( const std::shared_ptr< ImageBuffer > & buffer)

Reads data from the given image buffer.

Its purpose is to retrieves image data from the buffer.

Parameters
bufferA shared pointer to the image buffer to be read.
Returns
Returns a shared pointer to an Image2D object containing the read data.

◆ remove() [1/16]

void cil::Renderer::remove ( const std::shared_ptr< ArrayBuffer > & buffer)

◆ remove() [2/16]

void cil::Renderer::remove ( const std::shared_ptr< ElementIndices > & indices)

◆ remove() [3/16]

void cil::Renderer::remove ( const std::shared_ptr< Geometry > & geometry)

◆ remove() [4/16]

void cil::Renderer::remove ( const std::shared_ptr< Image > & image)

◆ remove() [5/16]

void cil::Renderer::remove ( const std::shared_ptr< Material > & material)

◆ remove() [6/16]

void cil::Renderer::remove ( const std::shared_ptr< Mesh > & mesh)

◆ remove() [7/16]

void cil::Renderer::remove ( const std::shared_ptr< Node > & node)

◆ remove() [8/16]

void cil::Renderer::remove ( const std::shared_ptr< Pass > & pass)

◆ remove() [9/16]

void cil::Renderer::remove ( const std::shared_ptr< Primitive > & primitive)

◆ remove() [10/16]

void cil::Renderer::remove ( const std::shared_ptr< Program > & program)

◆ remove() [11/16]

void cil::Renderer::remove ( const std::shared_ptr< Sampler > & sampler)

◆ remove() [12/16]

void cil::Renderer::remove ( const std::shared_ptr< Scene > & scene)

Removes the given object.

◆ remove() [13/16]

void cil::Renderer::remove ( const std::shared_ptr< Source > & source)

◆ remove() [14/16]

void cil::Renderer::remove ( const std::shared_ptr< Target > & target)

◆ remove() [15/16]

void cil::Renderer::remove ( const std::shared_ptr< Texture > & texture)

◆ remove() [16/16]

void cil::Renderer::remove ( const std::shared_ptr< Vertices > & vertices)

◆ render()

virtual void cil::Renderer::render ( const std::shared_ptr< Scene > & scene)
virtual

Renders the given scene.

Parameters
sceneA shared pointer to the scene to be rendered.

◆ update() [1/16]

void cil::Renderer::update ( const std::shared_ptr< ArrayBuffer > & buffer)

◆ update() [2/16]

void cil::Renderer::update ( const std::shared_ptr< ElementIndices > & indices)

◆ update() [3/16]

void cil::Renderer::update ( const std::shared_ptr< Geometry > & geometry)

◆ update() [4/16]

void cil::Renderer::update ( const std::shared_ptr< Image > & image)

◆ update() [5/16]

void cil::Renderer::update ( const std::shared_ptr< Material > & material)

◆ update() [6/16]

void cil::Renderer::update ( const std::shared_ptr< Mesh > & mesh)

◆ update() [7/16]

void cil::Renderer::update ( const std::shared_ptr< Node > & node)

◆ update() [8/16]

void cil::Renderer::update ( const std::shared_ptr< Pass > & pass)

◆ update() [9/16]

void cil::Renderer::update ( const std::shared_ptr< Primitive > & primitive)

◆ update() [10/16]

void cil::Renderer::update ( const std::shared_ptr< Program > & program)

◆ update() [11/16]

void cil::Renderer::update ( const std::shared_ptr< Sampler > & sampler)

◆ update() [12/16]

void cil::Renderer::update ( const std::shared_ptr< Scene > & scene)

Updates the given object.

◆ update() [13/16]

void cil::Renderer::update ( const std::shared_ptr< Source > & source)

◆ update() [14/16]

void cil::Renderer::update ( const std::shared_ptr< Target > & target)

◆ update() [15/16]

void cil::Renderer::update ( const std::shared_ptr< Texture > & texture)

◆ update() [16/16]

void cil::Renderer::update ( const std::shared_ptr< Vertices > & vertices)

Member Data Documentation

◆ renderContext

std::shared_ptr<RenderContext> cil::Renderer::renderContext
protected