DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
snbmodules
include
snbmodules
readout
FileReaderBase.hpp
Go to the documentation of this file.
1
12
#ifndef SNBMODULES_INCLUDE_SNBMODULES_FILEREADERBASE_HPP_
13
#define SNBMODULES_INCLUDE_SNBMODULES_FILEREADERBASE_HPP_
14
15
// package
16
#include "
snbmodules/readout/FileSourceConcept.hpp
"
17
18
#include "
appmodel/DataReaderConf.hpp
"
19
#include "
appmodel/DataReaderModule.hpp
"
20
#include "
appmodel/DataMoveCallbackConf.hpp
"
21
#include "
confmodel/Connection.hpp
"
22
#include "
confmodel/DaqModule.hpp
"
23
#include "
confmodel/DetDataSender.hpp
"
24
#include "
confmodel/DetectorStream.hpp
"
25
#include "
confmodel/DetectorToDaqConnection.hpp
"
26
#include "
confmodel/QueueWithSourceId.hpp
"
27
28
#include "
appfwk/ConfigurationManager.hpp
"
29
#include "
appfwk/DAQModule.hpp
"
30
31
#include "
utilities/ReusableThread.hpp
"
32
33
#include "
rcif/cmd/Nljs.hpp
"
34
35
// std
36
#include <cstdint>
37
#include <fstream>
38
#include <map>
39
#include <memory>
40
#include <string>
41
#include <vector>
42
43
namespace
dunedaq
{
44
namespace
snbmodules
{
45
46
class
FileReaderBase
47
{
48
public
:
53
explicit
FileReaderBase
(
const
std::string& name);
54
virtual
~FileReaderBase
() {}
55
56
FileReaderBase
(
const
FileReaderBase
&) =
delete
;
57
FileReaderBase
&
operator=
(
const
FileReaderBase
&) =
delete
;
58
FileReaderBase
(
FileReaderBase
&&) =
delete
;
59
FileReaderBase
&
operator=
(
FileReaderBase
&&) =
delete
;
60
61
void
init
(std::shared_ptr<appfwk::ConfigurationManager> cfg);
62
63
// To be implemented by final module
64
virtual
std::shared_ptr<snbmodules::FileSourceConcept>
create_source_emulator
(
const
appmodel::DataMoveCallbackConf
* cb_conf,
65
std::atomic<bool>&
run_marker
) = 0;
66
67
// Commands
68
void
do_conf
(
const
appfwk::DAQModule::CommandData_t&
/*args*/
);
69
void
do_scrap
(
const
appfwk::DAQModule::CommandData_t&
/*args*/
);
70
void
do_start
(
const
appfwk::DAQModule::CommandData_t&
/*args*/
);
71
void
do_stop
(
const
appfwk::DAQModule::CommandData_t&
/*args*/
);
72
73
std::string
get_fcr_name
() {
return
m_name
; }
74
75
private
:
76
// Configuration
77
bool
m_configured
;
78
std::string
m_name
;
79
std::shared_ptr<appfwk::ConfigurationManager>
m_cfg
;
80
81
std::map<std::string, std::shared_ptr<snbmodules::FileSourceConcept>>
m_source_emus
;
82
83
// Threading
84
std::atomic<bool>
m_run_marker
;
85
};
86
87
}
// namespace snbmodules
88
}
// namespace dunedaq
89
90
// Declarations
91
#include "
detail/FileReaderBase.hxx
"
92
93
#endif
// SNBMODULES_INCLUDE_SNBMODULES_FILEREADERBASE_HPP_
ConfigurationManager.hpp
DAQModule.hpp
FileReaderBase.hxx
FileSourceConcept.hpp
ReusableThread.hpp
dunedaq::appmodel::DataMoveCallbackConf
Definition
DataMoveCallbackConf.hpp:20
dunedaq::snbmodules::FileReaderBase::FileReaderBase
FileReaderBase(const FileReaderBase &)=delete
FileReaderBase is not copy-constructible.
dunedaq::snbmodules::FileReaderBase::do_scrap
void do_scrap(const appfwk::DAQModule::CommandData_t &)
Definition
FileReaderBase.hxx:95
dunedaq::snbmodules::FileReaderBase::init
void init(std::shared_ptr< appfwk::ConfigurationManager > cfg)
Definition
FileReaderBase.hxx:17
dunedaq::snbmodules::FileReaderBase::m_run_marker
std::atomic< bool > m_run_marker
Definition
FileReaderBase.hpp:84
dunedaq::snbmodules::FileReaderBase::m_configured
bool m_configured
Definition
FileReaderBase.hpp:77
dunedaq::snbmodules::FileReaderBase::create_source_emulator
virtual std::shared_ptr< snbmodules::FileSourceConcept > create_source_emulator(const appmodel::DataMoveCallbackConf *cb_conf, std::atomic< bool > &run_marker)=0
dunedaq::snbmodules::FileReaderBase::do_stop
void do_stop(const appfwk::DAQModule::CommandData_t &)
Definition
FileReaderBase.hxx:126
dunedaq::snbmodules::FileReaderBase::m_name
std::string m_name
Definition
FileReaderBase.hpp:78
dunedaq::snbmodules::FileReaderBase::m_cfg
std::shared_ptr< appfwk::ConfigurationManager > m_cfg
Definition
FileReaderBase.hpp:79
dunedaq::snbmodules::FileReaderBase::FileReaderBase
FileReaderBase(FileReaderBase &&)=delete
FileReaderBase is not move-constructible.
dunedaq::snbmodules::FileReaderBase::~FileReaderBase
virtual ~FileReaderBase()
Definition
FileReaderBase.hpp:54
dunedaq::snbmodules::FileReaderBase::get_fcr_name
std::string get_fcr_name()
Definition
FileReaderBase.hpp:73
dunedaq::snbmodules::FileReaderBase::do_conf
void do_conf(const appfwk::DAQModule::CommandData_t &)
Definition
FileReaderBase.hxx:49
dunedaq::snbmodules::FileReaderBase::operator=
FileReaderBase & operator=(FileReaderBase &&)=delete
FileReaderBase is not move-assignable.
dunedaq::snbmodules::FileReaderBase::FileReaderBase
FileReaderBase(const std::string &name)
FileReaderBase Constructor.
Definition
FileReaderBase.hxx:9
dunedaq::snbmodules::FileReaderBase::m_source_emus
std::map< std::string, std::shared_ptr< snbmodules::FileSourceConcept > > m_source_emus
Definition
FileReaderBase.hpp:81
dunedaq::snbmodules::FileReaderBase::do_start
void do_start(const appfwk::DAQModule::CommandData_t &)
Definition
FileReaderBase.hxx:110
dunedaq::snbmodules::FileReaderBase::operator=
FileReaderBase & operator=(const FileReaderBase &)=delete
FileReaderBase is not copy-assignable.
run_marker
std::atomic< bool > run_marker
Global atomic for process lifetime.
Definition
daq_application.cxx:26
DataMoveCallbackConf.hpp
DataReaderConf.hpp
DataReaderModule.hpp
Connection.hpp
DaqModule.hpp
DetDataSender.hpp
DetectorStream.hpp
DetectorToDaqConnection.hpp
QueueWithSourceId.hpp
dunedaq::snbmodules
Definition
bookkeeper.hpp:30
dunedaq
Including Qt Headers.
Definition
module.cpp:16
Nljs.hpp
Generated on
for DUNE-DAQ by
1.17.0