ifw-daq
3.0.0-pre2
IFW Data Acquisition modules
|
Implements common behaviour of OcmDaqController and DpmDaqController. More...
#include <daqController.hpp>
Public Member Functions | |
CommonDaqController (boost::asio::io_context &io_context, DaqContext context, std::shared_ptr< ObservableStatus > status, std::shared_ptr< ObservableEventLog > event_log) | |
std::shared_ptr< ObservableStatus > | GetStatus () DAQ_NOEXCEPT override |
std::shared_ptr< ObservableStatus const > | GetStatus () const DAQ_NOEXCEPT override |
std::shared_ptr< ObservableEventLog > | GetEventLog () DAQ_NOEXCEPT override |
std::string const & | GetId () const DAQ_NOEXCEPT override |
bool | GetErrorFlag () const DAQ_NOEXCEPT override |
DaqContext const & | GetContext () const DAQ_NOEXCEPT override |
boost::signals2::connection | ConnectContext (ContextSignal::slot_type const &slot) override |
Connect observer that is invoked when context is modified. More... | |
Public Member Functions inherited from daq::DaqController | |
DaqController ()=default | |
virtual | ~DaqController ()=default |
virtual boost::future< State > | StartAsync ()=0 |
Starts the data acquisition. More... | |
virtual boost::future< Status > | StopAsync (ErrorPolicy policy)=0 |
Stops the data acquisition. More... | |
virtual boost::future< Status > | AbortAsync (ErrorPolicy policy)=0 |
Aborts the data acquisition. More... | |
virtual boost::future< State > | ScheduleMergeAsync ()=0 |
Schedules DAQ for merging by sending request to DPM. More... | |
virtual void | UpdateKeywords (fits::KeywordVector const &keywords)=0 |
Updates (replace or add) list of keywords. More... | |
virtual boost::future< State > | AwaitAsync (std::vector< std::string > sources, std::chrono::milliseconds timeout)=0 |
Awaits that data acquisition stops or aborts. More... | |
virtual State | GetState () const DAQ_NOEXCEPT=0 |
Protected Member Functions | |
template<class T , class... Args> | |
void | AddEvent (Args &&... args) |
boost::asio::io_context & | GetIoCtx () noexcept |
rad::IoExecutor & | GetIoExecutor () noexcept |
DaqContext & | GetContextMut () noexcept |
ObservableEventLog & | GetEventLogRef () noexcept |
ObservableStatus & | GetStatusRef () noexcept |
ObservableStatus const & | GetStatusRef () const noexcept |
void | EmitContextSignal () |
Additional Inherited Members | |
Public Types inherited from daq::DaqController | |
using | ContextSignal = boost::signals2::signal< void(DaqContext const &)> |
Implements common behaviour of OcmDaqController and DpmDaqController.
Definition at line 333 of file daqController.hpp.
daq::CommonDaqController::CommonDaqController | ( | boost::asio::io_context & | io_context, |
DaqContext | context, | ||
std::shared_ptr< ObservableStatus > | status, | ||
std::shared_ptr< ObservableEventLog > | event_log | ||
) |
Definition at line 114 of file daqController.cpp.
|
inlineprotected |
Definition at line 350 of file daqController.hpp.
|
overridevirtual |
Connect observer that is invoked when context is modified.
o | Observer callable invoked on context changes. |
Implements daq::DaqController.
Definition at line 152 of file daqController.cpp.
|
inlineprotected |
Definition at line 371 of file daqController.hpp.
|
overridevirtual |
Implements daq::DaqController.
Definition at line 147 of file daqController.cpp.
|
inlineprotectednoexcept |
Definition at line 359 of file daqController.hpp.
|
overridevirtual |
|
overridevirtual |
Implements daq::DaqController.
Definition at line 135 of file daqController.cpp.
|
inlineprotectednoexcept |
Definition at line 362 of file daqController.hpp.
|
overridevirtual |
Implements daq::DaqController.
Definition at line 139 of file daqController.cpp.
|
inlineprotectednoexcept |
Definition at line 353 of file daqController.hpp.
|
inlineprotectednoexcept |
Definition at line 356 of file daqController.hpp.
|
overridevirtual |
Implements daq::DaqController.
Definition at line 131 of file daqController.cpp.
|
overridevirtual |
Implements daq::DaqController.
Definition at line 127 of file daqController.cpp.
|
inlineprotectednoexcept |
Definition at line 368 of file daqController.hpp.
|
inlineprotectednoexcept |
Definition at line 365 of file daqController.hpp.