hlcc 2.0.0-beta2+pre1
Loading...
Searching...
No Matches
Public Member Functions | List of all members
hlcc::oldbmux::ObservablePublisher< T > Class Template Reference

#include <observablePublisher.hpp>

Public Member Functions

 ObservablePublisher (std::unique_ptr<::elt::mal::ps::Publisher< T > > malpub, bool use_malpub=true)
 
void AddObserver (ObsCallback observer_function)
 
void AddObserver (ObsCallbackWithTimestamp observer_function)
 
void AddObserver (ObsCallbackWithDpQuality observer_function)
 
void AddObserver (ObsCallbackWithTimestampAndDpQuality observer_function)
 
std::shared_ptr< T > createDataEntity ()
 
PublishingTimeElapsed Publish (const T &data, const std::chrono::milliseconds &timeout, const ecos::TaiClock::time_point &timestamp=ecos::TaiClock::now(), const elt::oldb::CiiOldbDpQuality &dp_quality=elt::oldb::CiiOldbDpQuality::OK) const
 

Detailed Description

template<typename T>
class hlcc::oldbmux::ObservablePublisher< T >

We use ObservablePublisher to publish data both on CII pub-sub, and also to OLDB using lambdas that access all or parts of the pub/sub data.

Constructor & Destructor Documentation

◆ ObservablePublisher()

template<typename T >
hlcc::oldbmux::ObservablePublisher< T >::ObservablePublisher ( std::unique_ptr<::elt::mal::ps::Publisher< T > >  malpub,
bool  use_malpub = true 
)
explicit
Parameters
malpubThe MAL publisher to which we delegate.
use_malpubIf false, then malpub does not get used for publishing, but possibly still gets used in method createDataEntity(). The idea is to suppress publishing in certain cases, where still ObservablePublisher should be used.

Member Function Documentation

◆ AddObserver() [1/4]

template<typename T >
void hlcc::oldbmux::ObservablePublisher< T >::AddObserver ( ObsCallback  observer_function)

◆ AddObserver() [2/4]

template<typename T >
void hlcc::oldbmux::ObservablePublisher< T >::AddObserver ( ObsCallbackWithDpQuality  observer_function)

◆ AddObserver() [3/4]

template<typename T >
void hlcc::oldbmux::ObservablePublisher< T >::AddObserver ( ObsCallbackWithTimestamp  observer_function)

◆ AddObserver() [4/4]

template<typename T >
void hlcc::oldbmux::ObservablePublisher< T >::AddObserver ( ObsCallbackWithTimestampAndDpQuality  observer_function)

◆ createDataEntity()

template<typename T >
std::shared_ptr< T > hlcc::oldbmux::ObservablePublisher< T >::createDataEntity

◆ Publish()

template<typename T >
PublishingTimeElapsed hlcc::oldbmux::ObservablePublisher< T >::Publish ( const T &  data,
const std::chrono::milliseconds &  timeout,
const ecos::TaiClock::time_point &  timestamp = ecos::TaiClock::now(),
const elt::oldb::CiiOldbDpQuality &  dp_quality = elt::oldb::CiiOldbDpQuality::OK 
) const

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