DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
FileDataStoreImpl.hpp File Reference
Include dependency graph for FileDataStoreImpl.hpp:

Go to the source code of this file.

Namespaces

namespace  dunedaq
 The DUNE-DAQ namespace.

Functions

 dunedaq::ERS_DECLARE_ISSUE_BASE (dfmodules, FileDataStoreImplBadConfiguration, appfwk::GeneralDAQModuleIssue, "Construction of the FileDataStoreImpl base class failed due to faulty configuration",((std::string) name),) ERS_DECLARE_ISSUE_BASE(dfmodules
 Various ERS Issues for exceptional data store situations.

Variables

 dunedaq::InvalidOperationMode

Detailed Description

The base class for file-output-focused implementations of the DataStore interface

To create such an implementation, perform the following steps:

1) Create a class which satisfies the constraints expressed in the FileHandleConcept below - this package's SummaryTextDataWriter is an example

2) Declare a data store plugin which public-ally derives from FileDataStoreImpl, where FileDataStoreImpl has been parametrized with the class described in (1). In this package, SummaryTextDataStore is an example.

3) Implement the pure virtual open_new_file function, where the main purpose of the implementation should be to reset the FileDataStoreImpl's unique pointer data member to a new instance of the class in (1)

4) In the (likely) event that the open_new_file implementation needs configurable parameters which aren't already available in appmodel::DataStoreConf, create an OKS schema class which derives from appmodel::DataStoreConf as a superclass and adds parameters as needed. See DataStoreConfTestDeriv in this package, and how it's used by SummaryTextDataStore

This is part of the DUNE DAQ Application Framework, copyright 2020. Licensing/copyright details are in the COPYING file that you should have received with this code.

Definition in file FileDataStoreImpl.hpp.