Skip to content

Namespace ILLIXR

Namespace List > ILLIXR

RAC_ERRNO_MSG.

Namespaces

Type Name
namespace math_util

Classes

Type Name
class Event
A boolean condition-variable.
class RelativeClock
Relative clock for all of ILLIXR .
class Stoplight
Start/stop synchronization for the whole application.
struct accel
class data_use_indicator
A helper class that lets one dynamically determine if some data gets used.
class dynamic_lib
struct fast_pose_type
class gen_guid
This class generates unique IDs.
struct hmd_physical_info
struct hologram_input
struct imu_cam_type
struct imu_integrator_input
struct imu_integrator_seq
struct imu_params
struct imu_raw_type
struct imu_type
class managed_thread
An object that manages a std::thread; it joins and exits when the object gets destructed.
class phonebook
A service locator forILLIXR .
class plugin
A dynamically-loadable plugin for Spindle.
struct pose_type
class record
This class represents a tuple of fields which get logged by record_logger .
class record_coalescer
Coalesces logs of the same type to be written back as a single-transaction.
class record_header
Schema of each record.
class record_logger
The ILLIXR logging service for structured records.
struct rendered_frame
class rgb_depth_type
class runtime
class start_end_logger
a utility for logging to start and end times to a file
class switchboard
A manager for typesafe, threadsafe, named event-streams (called topics).
struct texture_pose
class threadloop
A reusable threadloop for plugins.
class time_point
class xlib_gl_extended_window

Public Types

Type Name
typedef std::chrono::duration< _clock_rep, _clock_period > _clock_duration
typedef std::nano _clock_period
typedef long _clock_rep
typedef RelativeClock::duration duration
typedef plugin *(* plugin_factory
typedef std::size_t plugin_id_t
typedef unsigned long long ullong
typedef std::unique_ptr< void, std::function< void(void *)> > void_ptr

Public Attributes

Type Name
const record_header __plugin_start_header = /* multi line expression */
const record_header __switchboard_callback_header = /* multi line expression */
const record_header __switchboard_topic_stop_header = /* multi line expression */
const record_header __threadloop_iteration_header = /* multi line expression */

Public Static Attributes

Type Name
const bool ENABLE_VERBOSE_ERRORS = {[**ILLIXR::str\_to\_bool**](namespaceILLIXR.md#function-str_to_bool)([**ILLIXR::getenv\_or**](namespaceILLIXR.md#function-getenv_or)("ILLIXR\_ENABLE\_VERBOSE\_ERRORS", "False"))}
constexpr int FB_HEIGHT = 1440
constexpr int FB_WIDTH = 2560
std::chrono::milliseconds LOG_BUFFER_DELAY = {1000}

Public Functions

Type Name
void abort (const std::string & msg="", const int error_val=1)
Exits the application during a fatal error.
double duration2double (duration dur)
constexpr duration freq2period (double fps)
std::string getenv_or (std::string var, std::string default_)
Temporary environment variable getter. Not needed once #198 is merged.
bool operator!= (const time_point & lhs, const time_point & rhs)
time_point operator+ (const time_point & pt, const time_point::duration & d)
time_point operator+ (const time_point::duration & d, const time_point & pt)
time_point::duration operator- (const time_point & lhs, const time_point & rhs)
bool operator< (const time_point & lhs, const time_point & rhs)
bool operator<= (const time_point & lhs, const time_point & rhs)
bool operator== (const time_point & lhs, const time_point & rhs)
bool operator> (const time_point & lhs, const time_point & rhs)
bool operator>= (const time_point & lhs, const time_point & rhs)
void report_and_clear_errno (const std::string & file, const int & line, const std::string & function, const std::string & msg="")
Support function to report errno values when debugging (NDEBUG).
runtime * runtime_factory (GLXContext appGLCtx)
bool str_to_bool (std::string var)
Convert a string containing a (python) boolean to the bool type.

Public Types Documentation

typedef _clock_duration

using ILLIXR::_clock_duration = typedef std::chrono::duration<_clock_rep, _clock_period>;

typedef _clock_period

using ILLIXR::_clock_period = typedef std::nano;

typedef _clock_rep

using ILLIXR::_clock_rep = typedef long;

Mimick of std::chrono::time_point<Clock, Rep> 1.

Can't use std::chrono::time_point<Clock, Rep>, because the Clock must satisfy the Clock interface 2, but RelativeClock cannot satisfy this interface because RelativeClock::now() is a stateful (instance method) not pure (class method). Instead, we will mimick the interface of 1 here.


typedef duration

using ILLIXR::duration = typedef RelativeClock::duration;

typedef plugin_factory

typedef plugin *(* ILLIXR::plugin_factory) (phonebook *);

typedef plugin_id_t

typedef std::size_t ILLIXR::plugin_id_t;

typedef ullong

using ILLIXR::ullong = typedef unsigned long long;

typedef void_ptr

using ILLIXR::void_ptr = typedef std::unique_ptr<void, std::function<void(void*)> >;

Public Attributes Documentation

variable __plugin_start_header

const record_header ILLIXR::__plugin_start_header;

variable __switchboard_callback_header

const record_header ILLIXR::__switchboard_callback_header;

@Should be private to Switchboard.


variable __switchboard_topic_stop_header

const record_header ILLIXR::__switchboard_topic_stop_header;

@Should be private to Switchboard.


variable __threadloop_iteration_header

const record_header ILLIXR::__threadloop_iteration_header;

Public Static Attributes Documentation

variable ENABLE_VERBOSE_ERRORS

const bool ILLIXR::ENABLE_VERBOSE_ERRORS;

variable FB_HEIGHT

constexpr int ILLIXR::FB_HEIGHT;

variable FB_WIDTH

constexpr int ILLIXR::FB_WIDTH;

variable LOG_BUFFER_DELAY

std::chrono::milliseconds ILLIXR::LOG_BUFFER_DELAY;

Public Functions Documentation

function abort

Exits the application during a fatal error.

inline void ILLIXR::abort (
    const std::string & msg="",
    const int error_val=1
) 

Switches to using abort during debugging over std::exit so that we can capture SIGABRT for debugging.


function duration2double

template<typename unit>
double ILLIXR::duration2double (
    duration dur
) 

function freq2period

constexpr duration ILLIXR::freq2period (
    double fps
) 

function getenv_or

Temporary environment variable getter. Not needed once #198 is merged.

inline std::string ILLIXR::getenv_or (
    std::string var,
    std::string default_
) 


function operator!=

inline bool ILLIXR::operator!= (
    const time_point & lhs,
    const time_point & rhs
) 

function operator+

inline time_point ILLIXR::operator+ (
    const time_point & pt,
    const time_point::duration & d
) 

function operator+

inline time_point ILLIXR::operator+ (
    const time_point::duration & d,
    const time_point & pt
) 

function operator-

inline time_point::duration ILLIXR::operator- (
    const time_point & lhs,
    const time_point & rhs
) 

function operator<

inline bool ILLIXR::operator< (
    const time_point & lhs,
    const time_point & rhs
) 

function operator<=

inline bool ILLIXR::operator<= (
    const time_point & lhs,
    const time_point & rhs
) 

function operator==

inline bool ILLIXR::operator== (
    const time_point & lhs,
    const time_point & rhs
) 

function operator>

inline bool ILLIXR::operator> (
    const time_point & lhs,
    const time_point & rhs
) 

function operator>=

inline bool ILLIXR::operator>= (
    const time_point & lhs,
    const time_point & rhs
) 

function report_and_clear_errno

Support function to report errno values when debugging (NDEBUG).

inline void ILLIXR::report_and_clear_errno (
    const std::string & file,
    const int & line,
    const std::string & function,
    const std::string & msg=""
) 

If errno is set, this function will report errno's value and the calling context. It will subsequently clear errno (reset value to 0). Otherwise, this function does nothing.


function runtime_factory

runtime * ILLIXR::runtime_factory (
    GLXContext appGLCtx
) 

function str_to_bool

Convert a string containing a (python) boolean to the bool type.

inline bool ILLIXR::str_to_bool (
    std::string var
) 



The documentation for this class was generated from the following file common/data_format.hpp