Skip to content

Class ILLIXR::native_renderer

ClassList > ILLIXR > native_renderer

Inherits the following classes: ILLIXR::threadloop

Public Functions

Type Name
void _p_one_iteration () override
Executes one iteration of the plugin's main loop.
void _p_thread_setup () override
Sets up the thread for the plugin.
native_renderer (const std::string & name, phonebook * pb)
~native_renderer () override

Public Functions inherited from ILLIXR::threadloop

See ILLIXR::threadloop

Type Name
virtual void internal_stop ()
Stops the thread.
virtual void start () override
Starts the thread.
virtual void stop () override
Joins the thread.
threadloop (const std::string & name, phonebook * pb)
~threadloop () override

Public Functions inherited from ILLIXR::plugin

See ILLIXR::plugin

Type Name
std::string get_name () noexcept const
plugin (std::string name, phonebook * pb)
void spd_add_file_sink (const std::string & file_name, const std::string & extension, const std::string & log_level)
auto spdlogger (const char * log_level)
virtual void start ()
A method which Spindle calls when it starts the component.
virtual void stop ()
A method which Spindle calls when it stops the component.
virtual ~plugin () = default

Protected Types inherited from ILLIXR::threadloop

See ILLIXR::threadloop

Type Name
enum skip_option

Protected Attributes inherited from ILLIXR::threadloop

See ILLIXR::threadloop

Type Name
std::size_t iteration_no = 0
std::size_t skip_no = 0

Protected Attributes inherited from ILLIXR::plugin

See ILLIXR::plugin

Type Name
const std::shared_ptr< gen_guid > gen_guid_
const std::size_t id_
std::string name_
const phonebook * phonebook_
std::shared_ptr< spdlog::logger > plugin_logger_
const std::shared_ptr< record_logger > record_logger_

Protected Functions inherited from ILLIXR::threadloop

See ILLIXR::threadloop

Type Name
virtual void _p_one_iteration () = 0
Override with the computation the thread does every loop.
virtual skip_option _p_should_skip ()
Gets called in a tight loop, to gate the invocation of _p_one_iteration() __
virtual void _p_thread_setup ()
Gets called at setup time, from the new thread.
bool should_terminate ()
Whether the thread has been asked to terminate.

Public Functions Documentation

function _p_one_iteration

Executes one iteration of the plugin's main loop.

void ILLIXR::native_renderer::_p_one_iteration () override

This function handles window events, acquires the next image from the swapchain, updates uniforms, records command buffers, submits commands to the graphics queue, and presents the rendered image. It also handles swapchain recreation if necessary and updates the frames per second (FPS) counter.

Exception:

  • runtime_error If any Vulkan operation fails.

function _p_thread_setup

Sets up the thread for the plugin.

void ILLIXR::native_renderer::_p_thread_setup () override

This function initializes depth images, offscreen targets, command buffers, sync objects, application and timewarp passes, offscreen and swapchain framebuffers. Then, it initializes application and timewarp with their respective passes.


function native_renderer

ILLIXR::native_renderer::native_renderer (
    const std::string & name,
    phonebook * pb
) 

function ~native_renderer

ILLIXR::native_renderer::~native_renderer () override


The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/plugins/native_renderer/plugin.hpp