ChimeraTK-ApplicationCore  04.01.00
ChimeraTK::AggregatableMessage Class Reference

Specialised ScalarOutput for sending event messages which can be aggregated by the EventMessageAggregator. More...

#include <EventMessageAggregator.h>

+ Inheritance diagram for ChimeraTK::AggregatableMessage:
+ Collaboration diagram for ChimeraTK::AggregatableMessage:

Public Member Functions

 AggregatableMessage (Module *owner, const std::string &name, std::string unit, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ScalarOutput (Module *owner, const std::string &name, std::string unit, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ScalarOutput ()
 
- Public Member Functions inherited from ChimeraTK::ScalarOutput< std::string >
 ScalarOutput (Module *owner, const std::string &name, std::string unit, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ScalarOutput ()
 
- Public Member Functions inherited from ChimeraTK::ScalarAccessor< std::string >
void replace (const ChimeraTK::NDRegisterAccessorAbstractor< std::string > &newAccessor)=delete
 
ScalarAccessor< std::string > & operator= (ScalarAccessor< std::string > &other)=delete
 
ScalarAccessor< std::string > & operator= (ScalarAccessor< std::string > &&other) noexcept
 Move assignment. More...
 
 ScalarAccessor (ScalarAccessor< std::string > &&other) noexcept
 Move constructor. More...
 
bool write (ChimeraTK::VersionNumber versionNumber)=delete
 
bool write ()
 
bool writeDestructively (ChimeraTK::VersionNumber versionNumber)=delete
 
bool writeDestructively ()
 
void writeIfDifferent (std::string newValue, VersionNumber versionNumber, DataValidity validity)=delete
 
void writeIfDifferent (std::string newValue)
 
void setAndWrite (std::string newValue, VersionNumber versionNumber)=delete
 
void setAndWrite (std::string newValue)
 
- Public Member Functions inherited from ChimeraTK::InversionOfControlAccessor< ScalarAccessor< std::string > >
 ~InversionOfControlAccessor ()
 Unregister at its owner when deleting. More...
 
void setMetaData (const std::string &name, const std::string &unit, const std::string &description)
 Change meta data (name, unit, description and optionally tags). More...
 
void setMetaData (const std::string &name, const std::string &unit, const std::string &description, const std::unordered_set< std::string > &tags)
 
void addTag (const std::string &tag)
 Add a tag. More...
 
void addTags (const std::unordered_set< std::string > &tags)
 Add multiple tags. More...
 
const std::unordered_set< std::string > & getTags ()
 Return set of tags. More...
 
 operator VariableNetworkNode ()
 Convert into VariableNetworkNode. More...
 
 operator VariableNetworkNode () const
 
void replace (ScalarAccessor< std::string > &&other)
 Replace with other accessor. More...
 
EntityOwnergetOwner () const
 Return the owning module. More...
 
Model::ProcessVariableProxy getModel () const
 

Static Public Attributes

static constexpr std::string_view aggregatableMessageTag {"_ChimeraTK_AggregatableMessage"}
 

Additional Inherited Members

- Public Types inherited from ChimeraTK::ScalarAccessor< std::string >
using value_type = std::string
 
- Protected Member Functions inherited from ChimeraTK::ScalarAccessor< std::string >
 ScalarAccessor (Module *owner, const std::string &name, VariableDirection direction, std::string unit, UpdateMode mode, const std::string &description, const std::unordered_set< std::string > &tags={})
 
 ScalarAccessor ()=default
 Default constructor creates a dysfunctional accessor (to be assigned with a real accessor later) More...
 
- Protected Member Functions inherited from ChimeraTK::InversionOfControlAccessor< ScalarAccessor< std::string > >
std::string completeDescription (EntityOwner *owner, const std::string &description) const
 complete the description with the full description from the owner More...
 
 InversionOfControlAccessor (Module *owner, const std::string &name, VariableDirection direction, std::string unit, size_t nElements, UpdateMode mode, const std::string &description, const std::type_info *valueType, const std::unordered_set< std::string > &tags={})
 
 InversionOfControlAccessor ()=default
 Default constructor creates a dysfunctional accessor (to be assigned with a real accessor later) More...
 
- Protected Attributes inherited from ChimeraTK::InversionOfControlAccessor< ScalarAccessor< std::string > >
VariableNetworkNode _node
 

Detailed Description

Specialised ScalarOutput for sending event messages which can be aggregated by the EventMessageAggregator.

The ApplicationModule should send a message string whenever a corresponding event occurs. It should not clear the message on its own, so the process variable will always contain the latest message string. Clearing old messages is done in the EventMessageAggregator.

Definition at line 23 of file EventMessageAggregator.h.

Constructor & Destructor Documentation

◆ AggregatableMessage()

ChimeraTK::AggregatableMessage::AggregatableMessage ( Module owner,
const std::string &  name,
std::string  unit,
const std::string &  description,
const std::unordered_set< std::string > &  tags = {} 
)

Definition at line 11 of file EventMessageAggregator.cc.

+ Here is the call graph for this function:

Member Function Documentation

◆ ScalarOutput() [1/2]

Definition at line 95 of file ScalarAccessor.h.

◆ ScalarOutput() [2/2]

Definition at line 226 of file ScalarAccessor.h.

Member Data Documentation

◆ aggregatableMessageTag

constexpr std::string_view ChimeraTK::AggregatableMessage::aggregatableMessageTag {"_ChimeraTK_AggregatableMessage"}
staticconstexpr

Definition at line 31 of file EventMessageAggregator.h.


The documentation for this class was generated from the following files: