ATLAS Offline Software
Loading...
Searching...
No Matches
MuonCalibStreamFileInputSvc.h
Go to the documentation of this file.
1#ifndef MUONCALIBSTREAMCNVSVC_MUONCALIBSTREAMFILEINPUTSVC_H
2#define MUONCALIBSTREAMCNVSVC_MUONCALIBSTREAMFILEINPUTSVC_H
3
4//===================================================================
5// MuonCalibStreamFileInputSvc.h
6//===================================================================
7//
8// Description: This class implements the interface MuonCalibStreamInputSvc for
9// event selector to read the events for Files.
10//
11//-------------------------------------------------------------------
12
13// Include files.
14#include <fstream>
15#include <TROOT.h>
16
18
20#include "EventStorage/DataReader.h"
21#include "MuCalDecode/CalibDataLoader.h"
22#include "MuCalDecode/CalibEvent.h"
23#include "MuCalDecode/CalibUti.h"
24#include "MuCalDecode/DataBuffer.h"
25
26class MuonCalibStreamFileInputSvc : public extends<AthService, MuonCalibStreamInputSvc> {
27public:
28 // Constructors:
29 MuonCalibStreamFileInputSvc(const std::string &name, ISvcLocator *svcloc);
30 // Destructor.
32 // Implementation of the MuonCalibStreamInputSvc interface methods.
33 virtual StatusCode initialize() override;
34 virtual const LVL2_MUON_CALIBRATION::CalibEvent *nextEvent() override;
35 virtual const LVL2_MUON_CALIBRATION::CalibEvent *currentEvent() const override;
36
37private:
38 Long64_t m_fileEventCounter{0};
40 Gaudi::Property<int> m_DumpStream{this, "DumpStream", 0};
41 std::unique_ptr<DataReader> m_reader{};
42 bool m_EoF{false};
43 std::unique_ptr<LVL2_MUON_CALIBRATION::CalibEvent> m_re{};
44 std::unique_ptr<LVL2_MUON_CALIBRATION::CalibDataLoader> m_dataLoader{};
45 DataBuffer m_dataBuffer;
46 Gaudi::Property<std::vector<std::string>> m_inputFiles{this, "InputFiles", {} };
47 std::vector<std::string>::iterator m_inputFilesIt{m_inputFiles.value().begin()};
48};
49#endif
std::unique_ptr< DataReader > m_reader
std::unique_ptr< LVL2_MUON_CALIBRATION::CalibEvent > m_re
virtual const LVL2_MUON_CALIBRATION::CalibEvent * nextEvent() override
virtual StatusCode initialize() override
Gaudi::Property< std::vector< std::string > > m_inputFiles
MuonCalibStreamFileInputSvc(const std::string &name, ISvcLocator *svcloc)
std::unique_ptr< LVL2_MUON_CALIBRATION::CalibDataLoader > m_dataLoader
virtual const LVL2_MUON_CALIBRATION::CalibEvent * currentEvent() const override
Get a pointer to the current event.
std::vector< std::string >::iterator m_inputFilesIt