ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetDetDescr
TRT_Cabling
src
TRT_FillCablingData_DC3.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
//
6
// TRT_FillCablingData_DC3 class - class used for filling
7
// of TRT Mapping in case of full ATLAS with the ROD05
8
// P.T. Keener
9
//
10
#ifndef TRT_FILLCABLINGDATA_DC3_H
11
#define TRT_FILLCABLINGDATA_DC3_H
12
13
/*
14
* Base class
15
*/
16
#include "
AthenaBaseComps/AthAlgTool.h
"
17
18
#include "Identifier/Identifier.h"
19
#include "
Identifier/IdentifierHash.h
"
20
#include "
Identifier/IdContext.h
"
21
22
#include "
TRT_CablingData.h
"
23
#include "
InDetIdentifier/TRT_ID.h
"
24
25
#include "eformat/SourceIdentifier.h"
// change to new eformat v3
26
27
#include <map>
28
#include <set>
29
#include <vector>
30
#include <stdint.h>
31
32
class
TRT_FillCablingData_DC3
:
public
AthAlgTool
{
33
34
public
:
35
36
// Constructor
37
TRT_FillCablingData_DC3
(
const
std::string&
type
,
const
std::string& name,
38
const
IInterface* parent);
39
40
// Destructor
41
virtual
~TRT_FillCablingData_DC3
();
42
43
//AlgTool InterfaceID
44
static
const
InterfaceID&
interfaceID
();
45
46
virtual
StatusCode
initialize
();
47
virtual
StatusCode
finalize
();
48
49
// Fill the data
50
TRT_CablingData
*
fillData
();
51
52
// Get ROBIDs for each Detector Element (Straw Layer)
53
std::vector<uint32_t>
getRobID
(
Identifier
id
)
const
;
54
55
private
:
56
//Define map of collection IDs for all ROBs
57
void
defineCollID
();
58
void
defineCollID_broken_FDR
();
59
60
void
fillCollID
(uint32_t rob_id, std::vector<IdentifierHash> & ids);
61
void
fillCollID_broken_FDR
(uint32_t rob_id, std::vector<IdentifierHash> & ids);
62
63
64
const
TRT_ID
*
m_TRTHelper
;
65
StringProperty
m_inputFilename
;
66
67
bool
m_PartialDetector
;
68
69
std::set< uint32_t >
m_validSourceIds
;
70
71
IdContext
m_cntx
;
72
73
TRT_CablingData
*
m_cabling
=
nullptr
;
74
75
// Define parameters
76
void
defineParameters
();
77
78
// Fill Tables with IDs for all straws
79
void
defineTables
();
80
void
defineTables_broken_FDR
();
81
82
bool
m_broken_FDR_Cabling
=
false
;
83
bool
m_RealData
;
84
85
int
m_numberOfRings
= 0;
86
int
m_numberOfLayers
[3]{};
87
88
// Identifiers for all straws;
89
// Make 2D because IDs are different depending on which ROD we are
90
std::vector< std::vector<Identifier> >
m_identfierForAllStraws
;
91
92
// Hashed Identifiers for all straws;
93
std::vector< std::vector<IdentifierHash> >
m_identfierHashForAllStraws
;
94
95
// Identifiers for all Collections for RODs
96
std::vector<std::vector<IdentifierHash> *>
m_collID
;
97
98
// Private version of number of straws in each layer
99
std::vector< int >
m_numberOfStrawsInLayers
;
100
std::vector< int >
m_StrawsPerLayer
;
101
102
// Wheel to ROD index for EC
103
int
m_StrawLayerToRod
[160]{};
104
105
// buffer offset to straw maps
106
std::map< int, int >
m_barrel_a_map
;
107
std::map< int, int >
m_barrel_c_map
;
108
109
std::map< int, int >
m_eca_l0_map
;
110
std::map< int, int >
m_eca_l1_map
;
111
std::map< int, int >
m_eca_r0_map
;
112
std::map< int, int >
m_eca_r1_map
;
113
114
std::map< int, int >
m_ecc_l0_map
;
115
std::map< int, int >
m_ecc_l1_map
;
116
std::map< int, int >
m_ecc_r0_map
;
117
std::map< int, int >
m_ecc_r1_map
;
118
119
};
120
121
#endif
//TRT_FILLCABLINGDATA_DC3_H
AthAlgTool.h
IdContext.h
IdentifierHash.h
TRT_CablingData.h
TRT_ID.h
This is an Identifier helper class for the TRT subdetector.
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
IdContext
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Definition
IdContext.h:26
TRT_CablingData
Definition
TRT_CablingData.h:18
TRT_FillCablingData_DC3::interfaceID
static const InterfaceID & interfaceID()
Definition
TRT_FillCablingData_DC3.cxx:77
TRT_FillCablingData_DC3::m_eca_l0_map
std::map< int, int > m_eca_l0_map
Definition
TRT_FillCablingData_DC3.h:109
TRT_FillCablingData_DC3::m_inputFilename
StringProperty m_inputFilename
Definition
TRT_FillCablingData_DC3.h:65
TRT_FillCablingData_DC3::m_collID
std::vector< std::vector< IdentifierHash > * > m_collID
Definition
TRT_FillCablingData_DC3.h:96
TRT_FillCablingData_DC3::m_TRTHelper
const TRT_ID * m_TRTHelper
Definition
TRT_FillCablingData_DC3.h:64
TRT_FillCablingData_DC3::m_ecc_r1_map
std::map< int, int > m_ecc_r1_map
Definition
TRT_FillCablingData_DC3.h:117
TRT_FillCablingData_DC3::fillCollID_broken_FDR
void fillCollID_broken_FDR(uint32_t rob_id, std::vector< IdentifierHash > &ids)
Definition
TRT_FillCablingData_DC3.cxx:1818
TRT_FillCablingData_DC3::m_cabling
TRT_CablingData * m_cabling
Definition
TRT_FillCablingData_DC3.h:73
TRT_FillCablingData_DC3::m_identfierHashForAllStraws
std::vector< std::vector< IdentifierHash > > m_identfierHashForAllStraws
Definition
TRT_FillCablingData_DC3.h:93
TRT_FillCablingData_DC3::m_eca_r0_map
std::map< int, int > m_eca_r0_map
Definition
TRT_FillCablingData_DC3.h:111
TRT_FillCablingData_DC3::m_eca_l1_map
std::map< int, int > m_eca_l1_map
Definition
TRT_FillCablingData_DC3.h:110
TRT_FillCablingData_DC3::defineParameters
void defineParameters()
Definition
TRT_FillCablingData_DC3.cxx:141
TRT_FillCablingData_DC3::m_numberOfRings
int m_numberOfRings
Definition
TRT_FillCablingData_DC3.h:85
TRT_FillCablingData_DC3::defineCollID_broken_FDR
void defineCollID_broken_FDR()
Definition
TRT_FillCablingData_DC3.cxx:1740
TRT_FillCablingData_DC3::TRT_FillCablingData_DC3
TRT_FillCablingData_DC3(const std::string &type, const std::string &name, const IInterface *parent)
Definition
TRT_FillCablingData_DC3.cxx:59
TRT_FillCablingData_DC3::m_ecc_l0_map
std::map< int, int > m_ecc_l0_map
Definition
TRT_FillCablingData_DC3.h:114
TRT_FillCablingData_DC3::m_identfierForAllStraws
std::vector< std::vector< Identifier > > m_identfierForAllStraws
Definition
TRT_FillCablingData_DC3.h:90
TRT_FillCablingData_DC3::fillData
TRT_CablingData * fillData()
Definition
TRT_FillCablingData_DC3.cxx:135
TRT_FillCablingData_DC3::m_eca_r1_map
std::map< int, int > m_eca_r1_map
Definition
TRT_FillCablingData_DC3.h:112
TRT_FillCablingData_DC3::m_barrel_c_map
std::map< int, int > m_barrel_c_map
Definition
TRT_FillCablingData_DC3.h:107
TRT_FillCablingData_DC3::finalize
virtual StatusCode finalize()
Definition
TRT_FillCablingData_DC3.cxx:125
TRT_FillCablingData_DC3::m_RealData
bool m_RealData
Definition
TRT_FillCablingData_DC3.h:83
TRT_FillCablingData_DC3::m_StrawLayerToRod
int m_StrawLayerToRod[160]
Definition
TRT_FillCablingData_DC3.h:103
TRT_FillCablingData_DC3::getRobID
std::vector< uint32_t > getRobID(Identifier id) const
Definition
TRT_FillCablingData_DC3.cxx:1980
TRT_FillCablingData_DC3::m_cntx
IdContext m_cntx
Definition
TRT_FillCablingData_DC3.h:71
TRT_FillCablingData_DC3::m_barrel_a_map
std::map< int, int > m_barrel_a_map
Definition
TRT_FillCablingData_DC3.h:106
TRT_FillCablingData_DC3::initialize
virtual StatusCode initialize()
Definition
TRT_FillCablingData_DC3.cxx:82
TRT_FillCablingData_DC3::defineCollID
void defineCollID()
Definition
TRT_FillCablingData_DC3.cxx:964
TRT_FillCablingData_DC3::m_validSourceIds
std::set< uint32_t > m_validSourceIds
Definition
TRT_FillCablingData_DC3.h:69
TRT_FillCablingData_DC3::m_ecc_l1_map
std::map< int, int > m_ecc_l1_map
Definition
TRT_FillCablingData_DC3.h:115
TRT_FillCablingData_DC3::m_numberOfLayers
int m_numberOfLayers[3]
Definition
TRT_FillCablingData_DC3.h:86
TRT_FillCablingData_DC3::m_ecc_r0_map
std::map< int, int > m_ecc_r0_map
Definition
TRT_FillCablingData_DC3.h:116
TRT_FillCablingData_DC3::fillCollID
void fillCollID(uint32_t rob_id, std::vector< IdentifierHash > &ids)
Definition
TRT_FillCablingData_DC3.cxx:1042
TRT_FillCablingData_DC3::m_StrawsPerLayer
std::vector< int > m_StrawsPerLayer
Definition
TRT_FillCablingData_DC3.h:100
TRT_FillCablingData_DC3::defineTables
void defineTables()
Definition
TRT_FillCablingData_DC3.cxx:176
TRT_FillCablingData_DC3::~TRT_FillCablingData_DC3
virtual ~TRT_FillCablingData_DC3()
Definition
TRT_FillCablingData_DC3.cxx:73
TRT_FillCablingData_DC3::m_PartialDetector
bool m_PartialDetector
Definition
TRT_FillCablingData_DC3.h:67
TRT_FillCablingData_DC3::defineTables_broken_FDR
void defineTables_broken_FDR()
Definition
TRT_FillCablingData_DC3.cxx:1143
TRT_FillCablingData_DC3::m_broken_FDR_Cabling
bool m_broken_FDR_Cabling
Definition
TRT_FillCablingData_DC3.h:82
TRT_FillCablingData_DC3::m_numberOfStrawsInLayers
std::vector< int > m_numberOfStrawsInLayers
Definition
TRT_FillCablingData_DC3.h:99
TRT_ID
This is an Identifier helper class for the TRT subdetector.
Definition
TRT_ID.h:84
Identifier
Definition
IdentifierFieldParser.cxx:14
type
Generated on
for ATLAS Offline Software by
1.17.0