DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
DataStore.hpp File Reference
#include "appfwk/ConfigurationManager.hpp"
#include "opmonlib/MonitorableObject.hpp"
#include "cetlib/BasicPluginFactory.h"
#include "cetlib/compiler_macros.h"
#include "daqdataformats/TimeSlice.hpp"
#include "daqdataformats/TriggerRecord.hpp"
#include "daqdataformats/Types.hpp"
#include "logging/Logging.hpp"
#include "utilities/NamedObject.hpp"
#include "nlohmann/json.hpp"
#include <chrono>
#include <cstddef>
#include <memory>
#include <string>
#include <vector>
Include dependency graph for DataStore.hpp:

Go to the source code of this file.

Classes

class  dunedaq::dfmodules::DataStore
 comment More...
 

Namespaces

namespace  dunedaq
 Including Qt Headers.
 
namespace  dunedaq::dfmodules
 An ERS Issue for DataStore creation failure.
 

Macros

#define EXTERN_C_FUNC_DECLARE_START
 
#define DEFINE_DUNE_DATA_STORE(klass)
 Declare the function that will be called by the plugin loader.
 

Functions

std::shared_ptr< DataStoredunedaq::dfmodules::make_data_store (const std::string &type, const std::string &name, std::shared_ptr< dunedaq::appfwk::ConfigurationManager > mcfg, const std::string &writer_identifier)
 Load a DataSrore plugin and return a unique_ptr to the contained DAQModule class.
 

Detailed Description

This is the interface for storing and retrieving data from various storage systems.

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 DataStore.hpp.

Macro Definition Documentation

◆ DEFINE_DUNE_DATA_STORE

#define DEFINE_DUNE_DATA_STORE ( klass)
Value:
EXTERN_C_FUNC_DECLARE_START \
std::shared_ptr<dunedaq::dfmodules::DataStore> make(const std::string& name, \
std::shared_ptr<dunedaq::appfwk::ConfigurationManager> mcfg, \
const std::string& writer_name ) \
{ \
return std::shared_ptr<dunedaq::dfmodules::DataStore>(new klass(name, mcfg, writer_name)); \
} \
}

Declare the function that will be called by the plugin loader.

Parameters
klassClass to be defined as a DUNE IPM Receiver

Definition at line 47 of file DataStore.hpp.

47#define DEFINE_DUNE_DATA_STORE(klass) \
48 EXTERN_C_FUNC_DECLARE_START \
49 std::shared_ptr<dunedaq::dfmodules::DataStore> make(const std::string& name, \
50 std::shared_ptr<dunedaq::appfwk::ConfigurationManager> mcfg, \
51 const std::string& writer_name ) \
52 { \
53 return std::shared_ptr<dunedaq::dfmodules::DataStore>(new klass(name, mcfg, writer_name)); \
54 } \
55 }

◆ EXTERN_C_FUNC_DECLARE_START

#define EXTERN_C_FUNC_DECLARE_START
Value:
extern "C" \
{

Definition at line 38 of file DataStore.hpp.

38#define EXTERN_C_FUNC_DECLARE_START \
39 extern "C" \
40 {