ifw-daq  3.0.0-pre2
IFW Data Acquisition modules
Public Member Functions | List of all members
daq::dpm::DaqController Class Referenceabstract

Controller for specific DAQ. More...

#include <scheduler.hpp>

+ Inheritance diagram for daq::dpm::DaqController:

Public Member Functions

virtual ~DaqController ()
 
virtual auto GetId () const noexcept -> std::string const &=0
 
virtual auto GetErrorFlag () const noexcept -> bool=0
 
virtual auto GetState () const noexcept -> State=0
 
virtual auto GetResult () const noexcept -> std::filesystem::path const &=0
 
virtual auto GetStatus () noexcept -> ObservableStatus &=0
 
virtual auto GetStatus () const noexcept -> ObservableStatus const &=0
 
virtual void Start ()=0
 Start/stop operations. More...
 
virtual void Stop ()=0
 
virtual void Poll ()=0
 
virtual bool IsStopped () const noexcept=0
 

Detailed Description

Controller for specific DAQ.

Responsibilities:

State::Scheduled for each state:

  1. Establish list of missing sources and create and store source mapping.
  2. Transition to Tranferring when source mapping has been stored successfully.

State::Transferring

  1. Use source mapping from previous state and query workspace if source has been downloaded.
  2. Transfer missing files.
  3. Transition to Merging when all files have been successfully transferred.

State::Merging

  1. ... N. Transition to Releasing

State::Releasing

  1. ...

State::Complete

DaqController cannot assume that all activities for each state is complete.

Definition at line 59 of file scheduler.hpp.

Constructor & Destructor Documentation

◆ ~DaqController()

virtual daq::dpm::DaqController::~DaqController ( )
inlinevirtual

Definition at line 61 of file scheduler.hpp.

Member Function Documentation

◆ GetErrorFlag()

virtual auto daq::dpm::DaqController::GetErrorFlag ( ) const -> bool
pure virtualnoexcept
Returns
Error flag.

Implemented in daq::dpm::DaqControllerImpl.

◆ GetId()

virtual auto daq::dpm::DaqController::GetId ( ) const -> std::string const &
pure virtualnoexcept
Returns
data acquisition identifier.

Implemented in daq::dpm::DaqControllerImpl.

◆ GetResult()

virtual auto daq::dpm::DaqController::GetResult ( ) const -> std::filesystem::path const &
pure virtualnoexcept
Returns
Data product filename.

Implemented in daq::dpm::DaqControllerImpl.

◆ GetState()

virtual auto daq::dpm::DaqController::GetState ( ) const -> State
pure virtualnoexcept
Returns
state of data acquisition.

Implemented in daq::dpm::DaqControllerImpl.

◆ GetStatus() [1/2]

virtual auto daq::dpm::DaqController::GetStatus ( ) const -> ObservableStatus const &
pure virtualnoexcept

Implemented in daq::dpm::DaqControllerImpl.

◆ GetStatus() [2/2]

virtual auto daq::dpm::DaqController::GetStatus ( ) -> ObservableStatus &
pure virtualnoexcept
Returns
status object associated with this daq.

Implemented in daq::dpm::DaqControllerImpl.

◆ IsStopped()

virtual bool daq::dpm::DaqController::IsStopped ( ) const
pure virtualnoexcept

Implemented in daq::dpm::DaqControllerImpl.

◆ Poll()

virtual void daq::dpm::DaqController::Poll ( )
pure virtual

Implemented in daq::dpm::DaqControllerImpl.

◆ Start()

virtual void daq::dpm::DaqController::Start ( )
pure virtual

Start/stop operations.

This assumes the implementation has an internal scheduler that it uses.

Implemented in daq::dpm::DaqControllerImpl.

◆ Stop()

virtual void daq::dpm::DaqController::Stop ( )
pure virtual

Implemented in daq::dpm::DaqControllerImpl.


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