Class ILLIXR::boba_streaming_server
ClassList > ILLIXR > boba_streaming_server
#include <plugin.hpp>
Inherits the following classes: ILLIXR::threadloop
Public Functions
| Type | Name |
|---|---|
| boba_streaming_server (const std::string & name, phonebook * pb) |
|
| ~boba_streaming_server () override |
Public Functions inherited from 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
| Type | Name |
|---|---|
| enum | skip_option |
Protected Attributes inherited from 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::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
| Type | Name |
|---|---|
| virtual void | _p_one_iteration () override |
| virtual skip_option | _p_should_skip () override |
Protected Functions inherited from 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. |
Detailed Description
Encode Boba's mmap-backed RGBA output and stream it to the native Quest client.
Encoded frames and small vector overlays travel together over the existing compressed_frames TCP transport used by the offload renderer. Modal textures are content-addressed, cached on the Quest, and sent on a separate TCP topic.
Public Functions Documentation
function boba_streaming_server
ILLIXR::boba_streaming_server::boba_streaming_server (
const std::string & name,
phonebook * pb
)
Bind the local stereo input and the TCP network outputs.
function ~boba_streaming_server
ILLIXR::boba_streaming_server::~boba_streaming_server () override
Release the encoder and any mapped producer rings.
Protected Functions Documentation
function _p_one_iteration
virtual void ILLIXR::boba_streaming_server::_p_one_iteration () override
Snapshot, validate, encode, and publish one Boba frame.
Implements ILLIXR::threadloop::_p_one_iteration
function _p_should_skip
virtual skip_option ILLIXR::boba_streaming_server::_p_should_skip () override
Sleep until Boba publishes a source frame newer than the last handled ID.
Implements ILLIXR::threadloop::_p_should_skip
The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/illixr_release/ILLIXR/plugins/boba_streaming_server/plugin.hpp