ifw-daq  2.1.0-pre1
IFW Data Acquisition modules
Classes | Public Member Functions | Public Attributes | List of all members
daq::DaqContext Struct Reference

Structure carrying context needed to start a Data Acquisition and construct a Data Product Specification needed to execute merge. More...

#include <daqContext.hpp>

Classes

struct  Source
 

Public Member Functions

 DaqContext ()=default
 
 DaqContext (DaqContext const &)=default
 
 DaqContext (DaqContext &&)=default
 
DaqContextoperator= (DaqContext &&)=default
 
DaqContextoperator= (DaqContext const &)=default
 

Public Attributes

std::string id
 DAQ identfier, possibly provided by user. More...
 
std::string file_id
 Data Product FileId as specified by OLAS ICD. More...
 
std::string process_name
 User defined process name. More...
 
std::string dp_name_prefix
 Data product file name prefix. More...
 
std::vector< Sourceprim_sources
 
std::vector< Sourcemeta_sources
 
std::vector< daq::fits::KeywordVariantkeywords
 Keyword list provided by OCM to Data Product. More...
 
std::chrono::milliseconds await_interval = std::chrono::seconds(10)
 Interval (and thus duration) of the requests sent to primary sources to await end of recording. More...
 
DpParts results
 Results from Data Acquisition (FITS files and keywords). More...
 
std::chrono::system_clock::time_point creation_time
 Time when DAQ was created. More...
 

Detailed Description

Structure carrying context needed to start a Data Acquisition and construct a Data Product Specification needed to execute merge.

This information can be serialized and deserialized to facilitate persitant storage.

In practice this means it must contain:

When creating a Data Product Specification consider:

@important TODO At the moment FitsController will create a FITS file using keywords and add those to results. This should be changed to simply provide the keywords "inline" with Data Product Specification (c.f. OcmDaqController::StopAsync).

@seealso daq::Status

Definition at line 48 of file daqContext.hpp.


Class Documentation

◆ daq::DaqContext::Source

struct daq::DaqContext::Source

Definition at line 49 of file daqContext.hpp.

Class Members
string name
string rr_uri

Constructor & Destructor Documentation

◆ DaqContext() [1/3]

daq::DaqContext::DaqContext ( )
default

◆ DaqContext() [2/3]

daq::DaqContext::DaqContext ( DaqContext const &  )
default

◆ DaqContext() [3/3]

daq::DaqContext::DaqContext ( DaqContext &&  )
default

Member Function Documentation

◆ operator=() [1/2]

DaqContext& daq::DaqContext::operator= ( DaqContext &&  )
default

◆ operator=() [2/2]

DaqContext& daq::DaqContext::operator= ( DaqContext const &  )
default

Member Data Documentation

◆ await_interval

std::chrono::milliseconds daq::DaqContext::await_interval = std::chrono::seconds(10)

Interval (and thus duration) of the requests sent to primary sources to await end of recording.

Default is 10 seconds.

Definition at line 98 of file daqContext.hpp.

◆ creation_time

std::chrono::system_clock::time_point daq::DaqContext::creation_time

Time when DAQ was created.

This should correspond to the exact time used for generating the file_id.

Definition at line 112 of file daqContext.hpp.

◆ dp_name_prefix

std::string daq::DaqContext::dp_name_prefix

Data product file name prefix.

Definition at line 79 of file daqContext.hpp.

◆ file_id

std::string daq::DaqContext::file_id

Data Product FileId as specified by OLAS ICD.

Definition at line 69 of file daqContext.hpp.

◆ id

std::string daq::DaqContext::id

DAQ identfier, possibly provided by user.

If user does not provide an id for the DAQ when starting it is identical to file_id.

Definition at line 64 of file daqContext.hpp.

◆ keywords

std::vector<daq::fits::KeywordVariant> daq::DaqContext::keywords

Keyword list provided by OCM to Data Product.

Keywords comes from:

Definition at line 91 of file daqContext.hpp.

◆ meta_sources

std::vector<Source> daq::DaqContext::meta_sources

Definition at line 81 of file daqContext.hpp.

◆ prim_sources

std::vector<Source> daq::DaqContext::prim_sources

Definition at line 80 of file daqContext.hpp.

◆ process_name

std::string daq::DaqContext::process_name

User defined process name.

Definition at line 74 of file daqContext.hpp.

◆ results

DpParts daq::DaqContext::results

Results from Data Acquisition (FITS files and keywords).

Note
The sources are sorted by order of creation, not order they should appear in DpSpec!

Definition at line 106 of file daqContext.hpp.


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