ATLAS Offline Software
Loading...
Searching...
No Matches
Trigger
EFTracking
FPGATrackSim
FPGATrackSimObjects
FPGATrackSimObjects
FPGATrackSimLogicalEventOutputHeader.h
Go to the documentation of this file.
1
// Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2
3
#ifndef TRIGFPGATrackSimOBJECTS_FPGATrackSimLOGICALEVENTOUTPUTHEADER_H
4
#define TRIGFPGATrackSimOBJECTS_FPGATrackSimLOGICALEVENTOUTPUTHEADER_H
5
6
#include "
FPGATrackSimObjects/FPGATrackSimDataFlowInfo.h
"
7
#include "
FPGATrackSimObjects/FPGATrackSimRoad.h
"
8
#include "
FPGATrackSimObjects/FPGATrackSimTrack.h
"
9
#include "
FPGATrackSimObjects/FPGATrackSimTypes.h
"
10
#include <TObject.h>
11
12
class
FPGATrackSimLogicalEventOutputHeader
{
13
public
:
14
15
FPGATrackSimLogicalEventOutputHeader
() {};
16
virtual
~FPGATrackSimLogicalEventOutputHeader
();
17
18
void
reset
();
//reset per event variables
19
20
// First Stage FPGATrackSim Roads
21
void
getFPGATrackSimRoads_1st
(std::vector<FPGATrackSimRoad> & roads_1st) { roads_1st =
m_FPGATrackSimRoads_1st
; }
22
const
std::vector<FPGATrackSimRoad>&
getFPGATrackSimRoads_1st
()
const
{
return
m_FPGATrackSimRoads_1st
; }
23
size_t
nFPGATrackSimRoads_1st
()
const
{
return
m_FPGATrackSimRoads_1st
.size(); }
24
void
reserveFPGATrackSimRoads_1st
(
size_t
size) {
m_FPGATrackSimRoads_1st
.reserve(size); }
25
void
addFPGATrackSimRoads_1st
(
const
std::vector<FPGATrackSimRoad> & roads_1st) {
26
for
(
auto
&
r
: roads_1st) {
27
m_FPGATrackSimRoads_1st
.push_back(
r
);
28
m_FPGATrackSimRoads_1st
.back().persistifyHits();
29
}
30
}
31
32
// Second Stage FPGATrackSim Roads
33
void
getFPGATrackSimRoads_2nd
(std::vector<FPGATrackSimRoad> & roads_2nd) { roads_2nd =
m_FPGATrackSimRoads_2nd
; }
34
const
std::vector<FPGATrackSimRoad>&
getFPGATrackSimRoads_2nd
()
const
{
return
m_FPGATrackSimRoads_2nd
; }
35
size_t
nFPGATrackSimRoads_2nd
()
const
{
return
m_FPGATrackSimRoads_2nd
.size(); }
36
void
reserveFPGATrackSimRoads_2nd
(
size_t
size) {
m_FPGATrackSimRoads_2nd
.reserve(size); }
37
void
addFPGATrackSimRoads_2nd
(
const
std::vector<FPGATrackSimRoad> & roads_2nd) {
38
for
(
auto
&
r
: roads_2nd) {
39
m_FPGATrackSimRoads_2nd
.push_back(
r
);
40
m_FPGATrackSimRoads_2nd
.back().persistifyHits();
41
}
42
}
43
44
// First Stage FPGATrackSim Tracks
45
std::vector<FPGATrackSimTrack>
const
&
getFPGATrackSimTracks_1st
()
const
{
return
m_FPGATrackSimTracks_1st
; }
46
size_t
nFPGATrackSimTracks_1st
()
const
{
return
m_FPGATrackSimTracks_1st
.size(); }
47
void
reserveFPGATrackSimTracks_1st
(
size_t
size) {
m_FPGATrackSimTracks_1st
.reserve(size); }
48
void
addFPGATrackSimTracks_1st
(std::vector<FPGATrackSimTrack>
const
& tracks_1st) {
49
m_FPGATrackSimTracks_1st
= tracks_1st;
50
for
(
auto
& t :
m_FPGATrackSimTracks_1st
) t.persistifyHits();
51
}
52
53
// Second Stage FPGATrackSim Tracks
54
std::vector<FPGATrackSimTrack>
const
&
getFPGATrackSimTracks_2nd
()
const
{
return
m_FPGATrackSimTracks_2nd
; }
55
size_t
nFPGATrackSimTracks_2nd
()
const
{
return
m_FPGATrackSimTracks_2nd
.size(); }
56
void
reserveFPGATrackSimTracks_2nd
(
size_t
size) {
m_FPGATrackSimTracks_2nd
.reserve(size); }
57
void
addFPGATrackSimTracks_2nd
(std::vector<FPGATrackSimTrack>
const
& tracks_2nd) {
58
m_FPGATrackSimTracks_2nd
= tracks_2nd;
59
for
(
auto
& t :
m_FPGATrackSimTracks_2nd
) t.persistifyHits();
60
}
61
62
// Data Flow Information
63
FPGATrackSimDataFlowInfo
const
&
getDataFlowInfo
()
const
{
return
m_dataflowInfo
; }
64
void
setDataFlowInfo
(
FPGATrackSimDataFlowInfo
const
& info) {
m_dataflowInfo
= info; }
65
66
private
:
67
68
std::vector<FPGATrackSimRoad>
m_FPGATrackSimRoads_1st
;
69
std::vector<FPGATrackSimRoad>
m_FPGATrackSimRoads_2nd
;
70
std::vector<FPGATrackSimTrack>
m_FPGATrackSimTracks_1st
;
71
std::vector<FPGATrackSimTrack>
m_FPGATrackSimTracks_2nd
;
72
73
FPGATrackSimDataFlowInfo
m_dataflowInfo
;
74
75
ClassDefNV
(
FPGATrackSimLogicalEventOutputHeader
, 5);
76
};
77
78
std::ostream&
operator<<
(std::ostream& s,
FPGATrackSimLogicalEventOutputHeader
const
&
h
);
79
80
#endif
// FPGATrackSimEVENTOUTPUTHEADER_H
FPGATrackSimDataFlowInfo.h
Structs that store the data flow information per event.
operator<<
std::ostream & operator<<(std::ostream &s, FPGATrackSimLogicalEventOutputHeader const &h)
Definition
FPGATrackSimLogicalEventOutputHeader.cxx:20
FPGATrackSimRoad.h
Defines a class for roads.
FPGATrackSimTrack.h
FPGATrackSimTypes.h
h
Header file for AthHistogramAlgorithm.
FPGATrackSimDataFlowInfo
Definition
FPGATrackSimDataFlowInfo.h:18
FPGATrackSimLogicalEventOutputHeader
Definition
FPGATrackSimLogicalEventOutputHeader.h:12
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimRoads_2nd
void getFPGATrackSimRoads_2nd(std::vector< FPGATrackSimRoad > &roads_2nd)
Definition
FPGATrackSimLogicalEventOutputHeader.h:33
FPGATrackSimLogicalEventOutputHeader::reserveFPGATrackSimTracks_1st
void reserveFPGATrackSimTracks_1st(size_t size)
Definition
FPGATrackSimLogicalEventOutputHeader.h:47
FPGATrackSimLogicalEventOutputHeader::reserveFPGATrackSimRoads_1st
void reserveFPGATrackSimRoads_1st(size_t size)
Definition
FPGATrackSimLogicalEventOutputHeader.h:24
FPGATrackSimLogicalEventOutputHeader::m_FPGATrackSimRoads_1st
std::vector< FPGATrackSimRoad > m_FPGATrackSimRoads_1st
Definition
FPGATrackSimLogicalEventOutputHeader.h:68
FPGATrackSimLogicalEventOutputHeader::addFPGATrackSimRoads_2nd
void addFPGATrackSimRoads_2nd(const std::vector< FPGATrackSimRoad > &roads_2nd)
Definition
FPGATrackSimLogicalEventOutputHeader.h:37
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimRoads_1st
const std::vector< FPGATrackSimRoad > & getFPGATrackSimRoads_1st() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:22
FPGATrackSimLogicalEventOutputHeader::addFPGATrackSimTracks_2nd
void addFPGATrackSimTracks_2nd(std::vector< FPGATrackSimTrack > const &tracks_2nd)
Definition
FPGATrackSimLogicalEventOutputHeader.h:57
FPGATrackSimLogicalEventOutputHeader::reset
void reset()
Definition
FPGATrackSimLogicalEventOutputHeader.cxx:12
FPGATrackSimLogicalEventOutputHeader::m_FPGATrackSimTracks_1st
std::vector< FPGATrackSimTrack > m_FPGATrackSimTracks_1st
Definition
FPGATrackSimLogicalEventOutputHeader.h:70
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimTracks_1st
std::vector< FPGATrackSimTrack > const & getFPGATrackSimTracks_1st() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:45
FPGATrackSimLogicalEventOutputHeader::setDataFlowInfo
void setDataFlowInfo(FPGATrackSimDataFlowInfo const &info)
Definition
FPGATrackSimLogicalEventOutputHeader.h:64
FPGATrackSimLogicalEventOutputHeader::reserveFPGATrackSimTracks_2nd
void reserveFPGATrackSimTracks_2nd(size_t size)
Definition
FPGATrackSimLogicalEventOutputHeader.h:56
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimRoads_1st
void getFPGATrackSimRoads_1st(std::vector< FPGATrackSimRoad > &roads_1st)
Definition
FPGATrackSimLogicalEventOutputHeader.h:21
FPGATrackSimLogicalEventOutputHeader::~FPGATrackSimLogicalEventOutputHeader
virtual ~FPGATrackSimLogicalEventOutputHeader()
Definition
FPGATrackSimLogicalEventOutputHeader.cxx:8
FPGATrackSimLogicalEventOutputHeader::m_FPGATrackSimTracks_2nd
std::vector< FPGATrackSimTrack > m_FPGATrackSimTracks_2nd
Definition
FPGATrackSimLogicalEventOutputHeader.h:71
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimTracks_2nd
std::vector< FPGATrackSimTrack > const & getFPGATrackSimTracks_2nd() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:54
FPGATrackSimLogicalEventOutputHeader::nFPGATrackSimTracks_1st
size_t nFPGATrackSimTracks_1st() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:46
FPGATrackSimLogicalEventOutputHeader::reserveFPGATrackSimRoads_2nd
void reserveFPGATrackSimRoads_2nd(size_t size)
Definition
FPGATrackSimLogicalEventOutputHeader.h:36
FPGATrackSimLogicalEventOutputHeader::nFPGATrackSimRoads_2nd
size_t nFPGATrackSimRoads_2nd() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:35
FPGATrackSimLogicalEventOutputHeader::m_FPGATrackSimRoads_2nd
std::vector< FPGATrackSimRoad > m_FPGATrackSimRoads_2nd
Definition
FPGATrackSimLogicalEventOutputHeader.h:69
FPGATrackSimLogicalEventOutputHeader::nFPGATrackSimRoads_1st
size_t nFPGATrackSimRoads_1st() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:23
FPGATrackSimLogicalEventOutputHeader::addFPGATrackSimRoads_1st
void addFPGATrackSimRoads_1st(const std::vector< FPGATrackSimRoad > &roads_1st)
Definition
FPGATrackSimLogicalEventOutputHeader.h:25
FPGATrackSimLogicalEventOutputHeader::getDataFlowInfo
FPGATrackSimDataFlowInfo const & getDataFlowInfo() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:63
FPGATrackSimLogicalEventOutputHeader::m_dataflowInfo
FPGATrackSimDataFlowInfo m_dataflowInfo
Definition
FPGATrackSimLogicalEventOutputHeader.h:73
FPGATrackSimLogicalEventOutputHeader::nFPGATrackSimTracks_2nd
size_t nFPGATrackSimTracks_2nd() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:55
FPGATrackSimLogicalEventOutputHeader::ClassDefNV
ClassDefNV(FPGATrackSimLogicalEventOutputHeader, 5)
FPGATrackSimLogicalEventOutputHeader::FPGATrackSimLogicalEventOutputHeader
FPGATrackSimLogicalEventOutputHeader()
Definition
FPGATrackSimLogicalEventOutputHeader.h:15
FPGATrackSimLogicalEventOutputHeader::addFPGATrackSimTracks_1st
void addFPGATrackSimTracks_1st(std::vector< FPGATrackSimTrack > const &tracks_1st)
Definition
FPGATrackSimLogicalEventOutputHeader.h:48
FPGATrackSimLogicalEventOutputHeader::getFPGATrackSimRoads_2nd
const std::vector< FPGATrackSimRoad > & getFPGATrackSimRoads_2nd() const
Definition
FPGATrackSimLogicalEventOutputHeader.h:34
r
int r
Definition
globals.cxx:22
Generated on
for ATLAS Offline Software by
1.14.0