ATLAS Offline Software
Loading...
Searching...
No Matches
FPGATrackSimReadRawRandomHitsTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef FPGATrackSimREADRAWRANDOMHITSTOOL_H
6#define FPGATrackSimREADRAWRANDOMHITSTOOL_H
7
10
11#include "TFile.h"
12#include "TTree.h"
13
14
15
16class FPGATrackSimReadRawRandomHitsTool : public extends<AthAlgTool, IFPGATrackSimEventInputHeaderTool>
17{
18 public:
19
20 FPGATrackSimReadRawRandomHitsTool(const std::string&, const std::string&, const IInterface*);
22 virtual StatusCode initialize() override;
23 virtual StatusCode readData(FPGATrackSimEventInputHeader* header, bool &last) const override;
24 virtual StatusCode writeData(FPGATrackSimEventInputHeader* header) const override;
25 virtual StatusCode finalize() override;
26
27 StatusCode readData(FPGATrackSimEventInputHeader* header, bool &last, bool doReset) const;
28
29 private:
30 // JO configuration
31 StringProperty m_inpath {this, "InFileName", "httsim_smartwrapper.root", "input path"};
32
33 // Internal pointers
34 unsigned int m_nEntries = 0U;
35 mutable std::atomic<unsigned> m_entry = 0;
36 mutable std::mutex m_readMutex; // Protect ROOT read operations in const methods
37};
38
39#endif // FPGATrackSimREADRAWRANDOMHINPUTTOOL_H
This declares a basic interface for input tools which provide the FPGATrackSimEventInputHeader data t...
FPGATrackSimReadRawRandomHitsTool(const std::string &, const std::string &, const IInterface *)
virtual ~FPGATrackSimReadRawRandomHitsTool()=default
virtual StatusCode writeData(FPGATrackSimEventInputHeader *header) const override
virtual StatusCode readData(FPGATrackSimEventInputHeader *header, bool &last) const override