ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger
EFTracking
FPGATrackSim
FPGATrackSimInput
FPGATrackSimInput
IFPGATrackSimEventInputHeaderTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
10
11
#ifndef IFPGATrackSimEventInputHeaderTool_H
12
#define IFPGATrackSimEventInputHeaderTool_H
13
14
#include "GaudiKernel/IAlgTool.h"
15
#include "TFile.h"
16
#include "TTree.h"
17
18
19
// to do: merge this with FPGATrackSimSGInput/IFPGATrackSimInputTool
20
// since they are both abstract interfaces
21
22
class
FPGATrackSimEventInputHeader
;
23
class
IFPGATrackSimEventInputHeaderTool
:
virtual
public
::IAlgTool
24
{
25
public
:
26
virtual
~IFPGATrackSimEventInputHeaderTool
() =
default
;
27
DeclareInterfaceID
(
IFPGATrackSimEventInputHeaderTool
, 1, 0);
28
29
30
virtual
StatusCode
readData
(
FPGATrackSimEventInputHeader
*
header
,
bool
&last)
const
= 0;
31
virtual
StatusCode
writeData
(
FPGATrackSimEventInputHeader
*
header
)
const
= 0;
32
virtual
FPGATrackSimEventInputHeader
*
getEventInputHeader
() {
return
m_eventHeader; };
33
virtual
TTree*
getEventTree
() {
return
m_EventTree;};
34
35
protected
:
36
37
// ROOT I/O objects modified in const readData()/writeData() methods.
38
// - Modified in const methods: openFile() and readData()
39
// - Thread-safety: Protected by m_fileMutex (or m_readMutex) in derived classes (FPGATrackSimInputHeaderTool, FPGATrackSimReadRawRandomHitsTool)
40
mutable
FPGATrackSimEventInputHeader
* m_eventHeader
ATLAS_THREAD_SAFE
=
nullptr
;
41
mutable
TFile* m_infile
ATLAS_THREAD_SAFE
=
nullptr
;
42
mutable
TTree* m_EventTree
ATLAS_THREAD_SAFE
=
nullptr
;
43
};
44
45
46
#endif
// IFPGATrackSimEventInputHeaderTool_H
FPGATrackSimEventInputHeader
Definition
FPGATrackSimEventInputHeader.h:22
IFPGATrackSimEventInputHeaderTool
Definition
IFPGATrackSimEventInputHeaderTool.h:24
IFPGATrackSimEventInputHeaderTool::DeclareInterfaceID
DeclareInterfaceID(IFPGATrackSimEventInputHeaderTool, 1, 0)
IFPGATrackSimEventInputHeaderTool::getEventInputHeader
virtual FPGATrackSimEventInputHeader * getEventInputHeader()
Definition
IFPGATrackSimEventInputHeaderTool.h:32
IFPGATrackSimEventInputHeaderTool::writeData
virtual StatusCode writeData(FPGATrackSimEventInputHeader *header) const =0
IFPGATrackSimEventInputHeaderTool::readData
virtual StatusCode readData(FPGATrackSimEventInputHeader *header, bool &last) const =0
IFPGATrackSimEventInputHeaderTool::~IFPGATrackSimEventInputHeaderTool
virtual ~IFPGATrackSimEventInputHeaderTool()=default
IFPGATrackSimEventInputHeaderTool::getEventTree
virtual TTree * getEventTree()
Definition
IFPGATrackSimEventInputHeaderTool.h:33
IFPGATrackSimEventInputHeaderTool::ATLAS_THREAD_SAFE
FPGATrackSimEventInputHeader *m_eventHeader ATLAS_THREAD_SAFE
Definition
IFPGATrackSimEventInputHeaderTool.h:40
header
Definition
hcg.cxx:527
Generated on
for ATLAS Offline Software by
1.14.0