ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
HLT
Trigger
TrigControl
TrigDFEmulator
src
FileReaderWriter.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGDFEMULATOR_FILEREADERWRITER_H_
6
#define TRIGDFEMULATOR_FILEREADERWRITER_H_
7
8
#include <memory>
9
#include <vector>
10
#include <exception>
11
12
#include <boost/property_tree/ptree.hpp>
13
14
#include "EventStorage/DataReader.h"
15
#include "EventStorage/pickDataReader.h"
16
#include "EventStorage/DataWriter.h"
17
18
#include "ers/ers.h"
19
20
namespace
DFEF
{
21
22
class
NoMoreEventsInFile
:
public
std::exception { };
23
24
class
ProblemReadingFromFile
:
public
std::exception { };
25
26
class
BadConfiguration
:
public
std::exception { };
27
31
class
FileReaderWriter
{
32
public
:
33
FileReaderWriter
(
const
boost::property_tree::ptree &
tree
);
34
~FileReaderWriter
() {};
35
37
void
print
();
38
40
std::unique_ptr<uint32_t[]>
getNextEvent
();
41
43
void
writeEvent
(
const
unsigned
int
& size_in_bytes,
const
uint32_t *event);
44
45
private
:
47
std::unique_ptr<uint32_t[]>
getEventFromFile
();
48
49
// Reader methods and variables
50
bool
nextFile
();
51
void
skipEvents
(
uint
num);
52
std::vector<std::string>
m_fileNames
;
53
std::unique_ptr<EventStorage::DataReader>
m_currReader
;
54
int
m_nMaxEvents
;
// Maximum events to read
55
int
m_nEvents
;
// Current number of event that is read
56
uint
m_nSkip
;
// Number of events to skip
57
bool
m_loopFiles
;
58
int
m_stride
;
59
int
m_currFile
;
60
int
m_currEventInFile
;
61
62
// Writer methods and variables
63
std::unique_ptr<EventStorage::DataWriter>
m_writer
;
64
std::string
m_outFileName
;
65
};
66
}
// namespace DFEF
67
#endif
68
uint
unsigned int uint
Definition
LArOFPhaseFill.cxx:19
DFEF::BadConfiguration
Definition
FileReaderWriter.h:26
DFEF::FileReaderWriter::m_outFileName
std::string m_outFileName
Definition
FileReaderWriter.h:64
DFEF::FileReaderWriter::m_currFile
int m_currFile
Definition
FileReaderWriter.h:59
DFEF::FileReaderWriter::FileReaderWriter
FileReaderWriter(const boost::property_tree::ptree &tree)
Definition
FileReaderWriter.cxx:8
DFEF::FileReaderWriter::m_writer
std::unique_ptr< EventStorage::DataWriter > m_writer
Definition
FileReaderWriter.h:63
DFEF::FileReaderWriter::m_fileNames
std::vector< std::string > m_fileNames
Definition
FileReaderWriter.h:52
DFEF::FileReaderWriter::print
void print()
Print configuration of the FileReaderWriter.
Definition
FileReaderWriter.cxx:102
DFEF::FileReaderWriter::m_currEventInFile
int m_currEventInFile
Definition
FileReaderWriter.h:60
DFEF::FileReaderWriter::~FileReaderWriter
~FileReaderWriter()
Definition
FileReaderWriter.h:34
DFEF::FileReaderWriter::writeEvent
void writeEvent(const unsigned int &size_in_bytes, const uint32_t *event)
Write event to file.
Definition
FileReaderWriter.cxx:239
DFEF::FileReaderWriter::m_stride
int m_stride
Definition
FileReaderWriter.h:58
DFEF::FileReaderWriter::m_loopFiles
bool m_loopFiles
Definition
FileReaderWriter.h:57
DFEF::FileReaderWriter::getNextEvent
std::unique_ptr< uint32_t[]> getNextEvent()
Get serialized next event and put the FullEventFragment in the memory location.
Definition
FileReaderWriter.cxx:122
DFEF::FileReaderWriter::m_nSkip
uint m_nSkip
Definition
FileReaderWriter.h:56
DFEF::FileReaderWriter::m_nMaxEvents
int m_nMaxEvents
Definition
FileReaderWriter.h:54
DFEF::FileReaderWriter::getEventFromFile
std::unique_ptr< uint32_t[]> getEventFromFile()
Read the current Event from File.
Definition
FileReaderWriter.cxx:160
DFEF::FileReaderWriter::nextFile
bool nextFile()
Definition
FileReaderWriter.cxx:189
DFEF::FileReaderWriter::m_currReader
std::unique_ptr< EventStorage::DataReader > m_currReader
Definition
FileReaderWriter.h:53
DFEF::FileReaderWriter::skipEvents
void skipEvents(uint num)
Definition
FileReaderWriter.cxx:114
DFEF::FileReaderWriter::m_nEvents
int m_nEvents
Definition
FileReaderWriter.h:55
DFEF::NoMoreEventsInFile
Definition
FileReaderWriter.h:22
DFEF::ProblemReadingFromFile
Definition
FileReaderWriter.h:24
DFEF
Definition
EFInterfaceEmulator.h:38
tree
TChain * tree
Definition
tile_monitor.h:30
Generated on
for ATLAS Offline Software by
1.17.0