CommRaT 2.0.0
C++20 Real-Time Messaging Framework
Loading...
Searching...
No Matches
commrat::ModuleConfig Struct Reference

#include <commrat/module/module_config.hpp>

Public Member Functions

uint8_t system_id () const
 Get system_id - NoOutput or SimpleOutput only.
 
uint8_t instance_id () const
 Get instance_id - NoOutput or SimpleOutput only.
 
uint8_t system_id (size_t index) const
 Get system_id for specific output index (MultiOutput only)
 
uint8_t instance_id (size_t index) const
 Get instance_id for specific output index (MultiOutput only)
 
uint8_t source_system_id () const
 Get source_system_id (SingleInput only)
 
uint8_t source_instance_id () const
 Get source_instance_id (SingleInput only)
 
const std::vector< MultiInputConfig::InputSource > & input_sources () const
 Get input sources (MultiInput only)
 
std::vector< MultiInputConfig::InputSource > & input_sources ()
 Get mutable input sources (MultiInput only) - for populating input_index.
 
std::chrono::milliseconds sync_tolerance () const
 Get sync_tolerance (MultiInput only)
 
size_t history_buffer_size () const
 Get history_buffer_size (MultiInput only)
 
uint8_t input_system_id (size_t index) const
 Get source system_id at index (MultiInput only)
 
uint8_t input_instance_id (size_t index) const
 Get source instance_id at index (MultiInput only)
 
bool has_no_output () const
 
bool has_simple_output () const
 
bool has_multi_output_config () const
 
bool has_no_input () const
 
bool has_single_input () const
 
bool has_multi_input_config () const
 

Public Attributes

std::string name
 
OutputConfig outputs = SimpleOutputConfig{.system_id = 0, .instance_id = 0}
 
InputConfig inputs = NoInputConfig{}
 
std::chrono::milliseconds period {100}
 
size_t message_slots {10}
 
size_t max_subscribers {8}
 
int priority {10}
 
bool realtime {false}
 
rfl::DefaultVal< uint32_t > cmd_message_slots = DEFAULT_CMD_SLOTS
 
rfl::DefaultVal< uint32_t > data_message_slots = DEFAULT_DATA_SLOTS
 

Detailed Description

Definition at line 107 of file module_config.hpp.

Member Function Documentation

◆ has_multi_input_config()

bool commrat::ModuleConfig::has_multi_input_config ( ) const
inline

Definition at line 268 of file module_config.hpp.

References inputs.

◆ has_multi_output_config()

bool commrat::ModuleConfig::has_multi_output_config ( ) const
inline

◆ has_no_input()

bool commrat::ModuleConfig::has_no_input ( ) const
inline

Definition at line 266 of file module_config.hpp.

References inputs.

◆ has_no_output()

bool commrat::ModuleConfig::has_no_output ( ) const
inline

Definition at line 262 of file module_config.hpp.

References outputs.

◆ has_simple_output()

bool commrat::ModuleConfig::has_simple_output ( ) const
inline

Definition at line 263 of file module_config.hpp.

References outputs.

◆ has_single_input()

◆ history_buffer_size()

size_t commrat::ModuleConfig::history_buffer_size ( ) const
inline

Get history_buffer_size (MultiInput only)

Definition at line 226 of file module_config.hpp.

References inputs.

◆ input_instance_id()

uint8_t commrat::ModuleConfig::input_instance_id ( size_t  index) const
inline

◆ input_sources() [1/2]

std::vector< MultiInputConfig::InputSource > & commrat::ModuleConfig::input_sources ( )
inline

Get mutable input sources (MultiInput only) - for populating input_index.

Definition at line 208 of file module_config.hpp.

References inputs.

◆ input_sources() [2/2]

const std::vector< MultiInputConfig::InputSource > & commrat::ModuleConfig::input_sources ( ) const
inline

◆ input_system_id()

uint8_t commrat::ModuleConfig::input_system_id ( size_t  index) const
inline

◆ instance_id() [1/2]

◆ instance_id() [2/2]

uint8_t commrat::ModuleConfig::instance_id ( size_t  index) const
inline

Get instance_id for specific output index (MultiOutput only)

Definition at line 165 of file module_config.hpp.

References outputs.

◆ source_instance_id()

uint8_t commrat::ModuleConfig::source_instance_id ( ) const
inline

◆ source_system_id()

uint8_t commrat::ModuleConfig::source_system_id ( ) const
inline

◆ sync_tolerance()

std::chrono::milliseconds commrat::ModuleConfig::sync_tolerance ( ) const
inline

Get sync_tolerance (MultiInput only)

Definition at line 217 of file module_config.hpp.

References inputs.

◆ system_id() [1/2]

◆ system_id() [2/2]

uint8_t commrat::ModuleConfig::system_id ( size_t  index) const
inline

Get system_id for specific output index (MultiOutput only)

Definition at line 153 of file module_config.hpp.

References outputs.

Member Data Documentation

◆ cmd_message_slots

rfl::DefaultVal<uint32_t> commrat::ModuleConfig::cmd_message_slots = DEFAULT_CMD_SLOTS

Definition at line 123 of file module_config.hpp.

◆ data_message_slots

rfl::DefaultVal<uint32_t> commrat::ModuleConfig::data_message_slots = DEFAULT_DATA_SLOTS

Definition at line 124 of file module_config.hpp.

◆ inputs

◆ max_subscribers

size_t commrat::ModuleConfig::max_subscribers {8}

Definition at line 117 of file module_config.hpp.

◆ message_slots

size_t commrat::ModuleConfig::message_slots {10}

◆ name

◆ outputs

◆ period

◆ priority

int commrat::ModuleConfig::priority {10}

◆ realtime

bool commrat::ModuleConfig::realtime {false}

The documentation for this struct was generated from the following file: