ifw-daq  3.0.0-pre2
IFW Data Acquisition modules
Classes | Public Member Functions | List of all members
daq::op::AwaitPrimAsync Struct Reference

A composite async operation that awaits primary data sources. More...

#include <awaitPrim.hpp>

Public Member Functions

 AwaitPrimAsync (AwaitOpParams params) noexcept
 Constructs operation with the privided parameters. More...
 
boost::future< Result< DpParts > > Initiate ()
 Initiates operation that await acquisition completion. More...
 
void Abort () noexcept
 Aborts the operation. More...
 

Detailed Description

A composite async operation that awaits primary data sources.

This is used by OCM to await primary data sources completion. Since sources may acquire data for a long time the operation is implemented by sending await commands to client with a smaller timeout, and then resending request on timeout. This is done to be able to have a reasonable MAL timeout to detect network related issues.

Notes

The await operation returns files produced from awaited-on sources (using DpParts result).

Await requests are ony sent to source if observed state requires it (i.e. if source is not already observed to be stopped, from a previous AwaitPrimAsync operation).

Await operation is completed when any of the following conditions are fulfilled:

The operation does not allow configurable error policy but behaves as if ErrorPolicy::Robust is set. The following are condidered fatal errors (causing result of operation to be an exception):

Definition at line 56 of file awaitPrim.hpp.

Constructor & Destructor Documentation

◆ AwaitPrimAsync()

daq::op::AwaitPrimAsync::AwaitPrimAsync ( AwaitOpParams  params)
explicitnoexcept

Constructs operation with the privided parameters.

Parameters
paramsparameters.

Definition at line 99 of file awaitPrim.cpp.

Member Function Documentation

◆ Abort()

void daq::op::AwaitPrimAsync::Abort ( )
noexcept

Aborts the operation.

Definition at line 169 of file awaitPrim.cpp.

◆ Initiate()

boost::future< Result< DpParts > > daq::op::AwaitPrimAsync::Initiate ( )

Initiates operation that await acquisition completion.

Note
Caller is responsible for keeping object alive until result is set.

Definition at line 103 of file awaitPrim.cpp.


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