The MAUVE Toolchain
|
The runtime namespace contains the core elements of the MAUVE middleware for designing and deploying real-time architectures. More...
Classes | |
class | AbstractComponent |
Abstract Component class. More... | |
class | AbstractCore |
The Core defines the methods of the component. More... | |
class | AbstractDeployer |
Abstract Deployer class. More... | |
class | AbstractFiniteStateMachine |
A Finite State Machine describes the component behavior. More... | |
class | AbstractFloatingPointProperty |
Abstract class for a Floating point property. More... | |
class | AbstractIntegralProperty |
Abstract class for a Integral property. More... | |
class | AbstractInterface |
Abstract Interface class. More... | |
class | AbstractLogger |
Class of a generic MAUVE logger. More... | |
class | AbstractPort |
Abstract Port class. More... | |
class | AbstractProperty |
Abstract property class. More... | |
class | AbstractResource |
Abstract Resource class. More... | |
class | AbstractState |
Abstract State class. More... | |
struct | AllreadyDefinedService |
Exception for Already Defined Services. More... | |
struct | AllreadyDefinedState |
Exception for Already Defined States. More... | |
struct | AlreadyDefinedPort |
Exception for Already Defined Ports. More... | |
struct | AlreadyDefinedProperty |
Exception for Already Defined Properties. More... | |
class | Architecture |
Architecture class. More... | |
class | CallPort |
A Port to call a service. More... | |
class | CallService |
Class of a Call service. More... | |
class | CallServiceImpl |
Call Service implementation. More... | |
class | CategoryLogger |
Class of a MAUVE logger for a custom category. More... | |
class | Component |
Component class. More... | |
class | ComponentLogger |
Class of a MAUVE logger for a component. More... | |
struct | Configurable |
Configurable trait. More... | |
class | Core |
The Core defines the methods of the component. More... | |
struct | CoreContainer |
Core container. More... | |
class | Deployer |
Deployer class deploying a specific architecture. More... | |
class | DeployerLogger |
Class of a MAUVE logger for the deployer. More... | |
class | EventPort |
class | EventService |
class | EventServiceImpl |
class | ExecState |
class | FiniteStateMachine |
class | FloatingPointProperty |
struct | FSMContainer |
class | HasPort |
class | HasProperty |
class | HasShell |
class | IntegralProperty |
class | Interface |
struct | InterfaceContainer |
class | Manager |
class | mauve_formatter |
Formatter for MAUVE loggers. More... | |
class | OtherProperty |
class | Port |
struct | property_t |
struct | property_t< I, F, true, T > |
struct | property_t< I, true, S, T > |
struct | property_t< true, F, S, T > |
class | ReadPort |
class | ReadService |
class | ReadServiceImpl |
class | Resource |
class | ResourceLogger |
Class of a MAUVE logger for a resrouce. More... | |
class | RingBuffer |
class | rosjson_sink |
class | RtMutex |
class | Service |
A Service. More... | |
struct | ServiceContainer |
struct | SharedDataCore |
struct | SharedDataInterface |
struct | SharedDataShell |
class | Shell |
A Shell is the interface of a component. More... | |
struct | ShellContainer |
class | State |
struct | StatusValue |
class | StringProperty |
class | SynchroState |
class | Task |
A system Task that executes a component. More... | |
class | Transition |
struct | WithAbstractCore |
Trait for objects with an abstract Core. More... | |
struct | WithAbstractFSM |
Trait for objects with an abstract FSM. More... | |
struct | WithAbstractInterface |
Trait for objects with an abstract Interface. More... | |
struct | WithAbstractShell |
Trait for objects with an abstract Shell. More... | |
struct | WithCore |
Object with a Core. More... | |
struct | WithFSM |
Object with a FiniteStateMachine. More... | |
struct | WithHook |
Objects with hooks. More... | |
struct | WithInterface |
Object with an Interface. More... | |
struct | WithLogger |
Object with a Logger. More... | |
struct | WithName |
Object with a name. More... | |
struct | WithShell |
Object with a Shell. More... | |
struct | WithShellAndCore |
Objects wite a Shell and a Core. More... | |
class | WritePort |
class | WriteService |
class | WriteServiceImpl |
Typedefs | |
template<typename T > | |
using | Property = typename property_t< std::is_integral< T >::value, std::is_floating_point< T >::value, std::is_same< T, std::string >::value, T >::type |
template<typename T > | |
using | SharedData = Resource< SharedDataShell< T >, SharedDataCore< T >, SharedDataInterface< T >> |
using | task_id_t = int32_t |
using | time_ns_t = uint64_t |
using | version_t = uint32_t |
Enumerations | |
enum | connection_type { EVENT, READ, WRITE, CALL } |
Port types. | |
enum | DataStatus { NO_DATA, NEW_DATA, OLD_DATA } |
enum | property_type { INTEGRAL, FLOATING_POINT, STRING, OTHER } |
Property types. | |
enum | TaskStatus { CREATED, ACTIVATED, RUNNING } |
Functions | |
std::string | default_file_name () |
Default log file name. More... | |
template<typename ARCHI > | |
AbstractDeployer * | mk_abstract_deployer (ARCHI *architecture, Manager< ARCHI > *manager=nullptr) |
Build the application Deployer from an architecture. More... | |
template<typename ARCHI > | |
Deployer< ARCHI > * | mk_deployer (ARCHI *architecture, Manager< ARCHI > *manager=nullptr) |
std::shared_ptr< spdlog::logger > | mk_logger (const std::string &label, const std::string &type, const YAML::Node &args) |
Create a logger from its type. More... | |
void | mk_python_deployer () |
Create the Deployer for access from the python binding. | |
constexpr time_ns_t | ms_to_ns (time_ns_t ms) |
void | ns_to_itimerspec (time_ns_t period, time_ns_t value, struct itimerspec *its) |
constexpr time_ns_t | ns_to_sec (time_ns_t ns) |
void | ns_to_timespec (time_ns_t ns, struct timespec *ts) |
std::ostream & | operator<< (std::ostream &out, DataStatus status) |
template<typename T > | |
std::ostream & | operator<< (std::ostream &out, StatusValue< T > status_value) |
std::ostream & | operator<< (std::ostream &out, struct timespec const &ts) |
std::ostream & | operator<< (std::ostream &out, AbstractState const &state) |
std::ostream & | operator<< (std::ostream &out, struct itimerspec const &its) |
std::ostream & | operator<< (std::ostream &out, Shell const &shell) |
Stream a shell to an output stream. More... | |
constexpr time_ns_t | sec_to_ms (time_ns_t sec) |
constexpr time_ns_t | sec_to_ns (time_ns_t sec) |
constexpr time_ns_t | sec_to_us (time_ns_t sec) |
constexpr time_ns_t | timespec_to_ns (const struct timespec &ts) |
void | trace_component_start (AbstractComponent *c) |
void | trace_execution_begin (AbstractComponent *c, AbstractState *s) |
void | trace_execution_end (AbstractComponent *c, AbstractState *s) |
void | trace_service_begin (const std::string &resource_name, const std::string &service_name) |
void | trace_service_end (const std::string &resource_name, const std::string &service_name) |
void | trace_synchronization_begin (AbstractComponent *c, AbstractState *s) |
void | trace_synchronization_end (AbstractComponent *c, AbstractState *s) |
Variables | |
container { container } | |
status { DataStatus::NO_DATA } | |
The runtime namespace contains the core elements of the MAUVE middleware for designing and deploying real-time architectures.
std::string mauve::runtime::default_file_name | ( | ) |
Default log file name.
AbstractDeployer * mauve::runtime::mk_abstract_deployer | ( | ARCHI * | architecture, |
Manager< ARCHI > * | manager = nullptr |
||
) |
Build the application Deployer from an architecture.
ARCHI | Architecture type |
architecture | The architecture executed by the Deployer |
manager | A manager of the architecture |
std::shared_ptr<spdlog::logger> mauve::runtime::mk_logger | ( | const std::string & | label, |
const std::string & | type, | ||
const YAML::Node & | args | ||
) |
Create a logger from its type.
label | label of the logger |
type | type of the logger |
args | logger arguments |
std::ostream& mauve::runtime::operator<< | ( | std::ostream & | out, |
Shell const & | shell | ||
) |
Stream a shell to an output stream.
out | the output stream |
shell | the shell to be streamed |