ATLAS Offline Software
InnerDetector
InDetDetDescr
TRT_Cabling
src
TRT_FillCablingData_SR1_ECC.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
//
6
// TRT_FillCablingData_SR1_ECC class - class used for filling
7
// of TRT Mapping in case of SR1 Cosmics
8
// P.T. Keener
9
//
10
#ifndef TRT_FILLCABLINGDATA_SR1_ECC_H
11
#define TRT_FILLCABLINGDATA_SR1_ECC_H
12
13
14
/*
15
* Base class
16
*/
17
#include "
AthenaBaseComps/AthAlgTool.h
"
18
19
#include "Identifier/Identifier.h"
20
#include "
Identifier/IdentifierHash.h
"
21
#include "
Identifier/IdContext.h
"
22
23
#include "
TRT_CablingData.h
"
24
#include "
TRT_ReadoutGeometry/TRT_DetectorManager.h
"
25
#include "
InDetIdentifier/TRT_ID.h
"
26
27
#include "eformat/SourceIdentifier.h"
// change to new eformat v3
28
29
#include "
TRT_FillCablingData_Types.h
"
30
31
#include <map>
32
#include <vector>
33
#include <stdint.h>
34
35
36
37
class
TRT_FillCablingData_SR1_ECC
:
public
AthAlgTool
{
38
39
public
:
40
41
// Constructor
42
TRT_FillCablingData_SR1_ECC
(
const
std::string&
type
,
const
std::string&
name
,
43
const
IInterface*
parent
);
44
45
// Destructor
46
virtual
~TRT_FillCablingData_SR1_ECC
();
47
48
//AlgTool InterfaceID
49
static
const
InterfaceID&
interfaceID
();
50
51
virtual
StatusCode
initialize
();
52
53
virtual
StatusCode
finalize
();
54
55
// Fill the data
56
TRT_CablingData
*
fillData
();
57
58
//Define map of collection IDs for all ROBs
59
void
defineCollID
();
60
61
// Get ROBIDs for each Detector Element (Straw Layer)
62
std::vector<uint32_t>
getRobID
(
Identifier
id
)
const
;
63
64
void
fillCollID
(
uint32_t
rob_id, std::vector<IdentifierHash> &
ids
);
65
66
private
:
67
68
const
TRT_ID
*
m_TRTHelper
;
69
IdContext
m_cntx
;
70
71
TRT_CablingData
*
m_cabling
=
nullptr
;
72
73
// Define parameters
74
void
defineParameters
();
75
76
// Fill Tables with IDs for all straws
77
void
defineTables
();
78
79
int
m_numberOfRings
= 0;
80
int
m_numberOfLayersA
= 0;
81
int
m_numberOfLayersB
= 0;
82
int
m_numberOfLayersC
= 0;
83
// int m_numberOfStrawsInBarrelROD;
84
// int m_shiftForRightBarrelStraws;
85
int
m_numberOfIdentifierSectors
= 0;
86
87
88
// Source ID for all robs
89
// std::vector<uint32_t> m_allRobs;
90
91
// Vector for the mapping from phi to ROB Source ID
92
std::map<int, std::vector<uint32_t> >
m_phi_to_source
;
93
94
// Identifiers for all straws;
95
// Make 2D because IDs are different depending on which ROD we are
96
std::vector< std::vector<Identifier> >
m_identfierForAllStraws
;
97
// std::vector<Identifier> m_identfierForAllStraws;
98
99
// Hashed Identifiers for all straws;
100
std::vector< std::vector<IdentifierHash> >
m_identfierHashForAllStraws
;
101
102
// Identifiers for all Collections for RODs
103
std::vector<std::vector<IdentifierHash> *>
m_collID
;
104
105
// Private version of number of straws in each layer
106
std::vector< int >
m_numberOfStrawsInLayers
;
107
108
// buffer offset to straw maps per ROD connector
109
std::map< int, int >
m_1BS_1BL_map
;
110
std::map< int, int >
m_2BS_2BL1_map
;
111
std::map< int, int >
m_2BL2_3BL1_map
;
112
std::map< int, int >
m_3BL2_map
;
113
std::map< int, int >
m_3BS_map
;
114
115
std::map< int, int >
m_1FS_1FL_map
;
116
std::map< int, int >
m_2FS_2FL1_map
;
117
std::map< int, int >
m_2FL2_3FL1_map
;
118
std::map< int, int >
m_3FL2_map
;
119
std::map< int, int >
m_3FS_map
;
120
121
std::map< int, int >
m_ec_1l_map
;
122
std::map< int, int >
m_ec_2l_map
;
123
std::map< int, int >
m_ec_3l_map
;
124
125
std::map< int, int >
m_ec_1r_map
;
126
std::map< int, int >
m_ec_2r_map
;
127
std::map< int, int >
m_ec_3r_map
;
128
129
// int m_NumberOfMapFiles;
130
131
132
GlobalCableMap
m_CableMap
;
133
134
};
135
136
#endif //TRT_FILLCABLINGDATA_SR1_H
TRT_FillCablingData_SR1_ECC::m_ec_1r_map
std::map< int, int > m_ec_1r_map
Definition:
TRT_FillCablingData_SR1_ECC.h:125
TRT_FillCablingData_SR1_ECC::~TRT_FillCablingData_SR1_ECC
virtual ~TRT_FillCablingData_SR1_ECC()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:56
TRT_FillCablingData_SR1_ECC::defineParameters
void defineParameters()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:107
TRT_DetectorManager.h
TRT_CablingData.h
xAOD::uint32_t
setEventNumber uint32_t
Definition:
EventInfo_v1.cxx:127
TRT_FillCablingData_SR1_ECC::m_identfierHashForAllStraws
std::vector< std::vector< IdentifierHash > > m_identfierHashForAllStraws
Definition:
TRT_FillCablingData_SR1_ECC.h:100
TRT_FillCablingData_SR1_ECC::m_ec_2l_map
std::map< int, int > m_ec_2l_map
Definition:
TRT_FillCablingData_SR1_ECC.h:122
TRT_FillCablingData_SR1_ECC::defineTables
void defineTables()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:150
TRT_FillCablingData_SR1_ECC::interfaceID
static const InterfaceID & interfaceID()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:60
TRT_FillCablingData_SR1_ECC::m_2BL2_3BL1_map
std::map< int, int > m_2BL2_3BL1_map
Definition:
TRT_FillCablingData_SR1_ECC.h:111
TRT_ID.h
This is an Identifier helper class for the TRT subdetector. This class is a factory for creating comp...
TRT_FillCablingData_SR1_ECC::defineCollID
void defineCollID()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:881
TRT_FillCablingData_SR1_ECC::m_cabling
TRT_CablingData * m_cabling
Definition:
TRT_FillCablingData_SR1_ECC.h:71
TRT_FillCablingData_SR1_ECC::initialize
virtual StatusCode initialize()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:65
TRT_FillCablingData_SR1_ECC::m_1FS_1FL_map
std::map< int, int > m_1FS_1FL_map
Definition:
TRT_FillCablingData_SR1_ECC.h:115
TRT_FillCablingData_SR1_ECC::m_3BS_map
std::map< int, int > m_3BS_map
Definition:
TRT_FillCablingData_SR1_ECC.h:113
TRT_FillCablingData_SR1_ECC::m_TRTHelper
const TRT_ID * m_TRTHelper
Definition:
TRT_FillCablingData_SR1_ECC.h:68
TRT_FillCablingData_SR1_ECC::TRT_FillCablingData_SR1_ECC
TRT_FillCablingData_SR1_ECC(const std::string &type, const std::string &name, const IInterface *parent)
Definition:
TRT_FillCablingData_SR1_ECC.cxx:47
TRT_FillCablingData_SR1_ECC::m_cntx
IdContext m_cntx
Definition:
TRT_FillCablingData_SR1_ECC.h:69
TRT_FillCablingData_SR1_ECC::m_numberOfRings
int m_numberOfRings
Definition:
TRT_FillCablingData_SR1_ECC.h:79
TRT_FillCablingData_SR1_ECC::m_numberOfLayersA
int m_numberOfLayersA
Definition:
TRT_FillCablingData_SR1_ECC.h:80
TRT_FillCablingData_SR1_ECC::m_2FL2_3FL1_map
std::map< int, int > m_2FL2_3FL1_map
Definition:
TRT_FillCablingData_SR1_ECC.h:117
TRT_FillCablingData_SR1_ECC::m_ec_3l_map
std::map< int, int > m_ec_3l_map
Definition:
TRT_FillCablingData_SR1_ECC.h:123
TRT_FillCablingData_SR1_ECC::m_identfierForAllStraws
std::vector< std::vector< Identifier > > m_identfierForAllStraws
Definition:
TRT_FillCablingData_SR1_ECC.h:96
TRT_FillCablingData_SR1_ECC::fillCollID
void fillCollID(uint32_t rob_id, std::vector< IdentifierHash > &ids)
Definition:
TRT_FillCablingData_SR1_ECC.cxx:905
IdContext.h
TRT_FillCablingData_SR1_ECC::m_numberOfStrawsInLayers
std::vector< int > m_numberOfStrawsInLayers
Definition:
TRT_FillCablingData_SR1_ECC.h:106
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition:
test_pyathena.py:15
TRT_FillCablingData_SR1_ECC::m_CableMap
GlobalCableMap m_CableMap
Definition:
TRT_FillCablingData_SR1_ECC.h:132
TRT_FillCablingData_SR1_ECC::m_ec_1l_map
std::map< int, int > m_ec_1l_map
Definition:
TRT_FillCablingData_SR1_ECC.h:121
TRT_FillCablingData_SR1_ECC::m_3FS_map
std::map< int, int > m_3FS_map
Definition:
TRT_FillCablingData_SR1_ECC.h:119
TRT_FillCablingData_SR1_ECC::m_collID
std::vector< std::vector< IdentifierHash > * > m_collID
Definition:
TRT_FillCablingData_SR1_ECC.h:103
TRT_FillCablingData_SR1_ECC::m_numberOfLayersB
int m_numberOfLayersB
Definition:
TRT_FillCablingData_SR1_ECC.h:81
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
python.subdetectors.mmg.ids
ids
Definition:
mmg.py:8
IdentifierHash.h
TRT_FillCablingData_Types.h
TRT_FillCablingData_SR1_ECC::m_ec_3r_map
std::map< int, int > m_ec_3r_map
Definition:
TRT_FillCablingData_SR1_ECC.h:127
TRT_FillCablingData_SR1_ECC::m_3FL2_map
std::map< int, int > m_3FL2_map
Definition:
TRT_FillCablingData_SR1_ECC.h:118
TRT_FillCablingData_SR1_ECC::m_1BS_1BL_map
std::map< int, int > m_1BS_1BL_map
Definition:
TRT_FillCablingData_SR1_ECC.h:109
TRT_FillCablingData_SR1_ECC::m_numberOfLayersC
int m_numberOfLayersC
Definition:
TRT_FillCablingData_SR1_ECC.h:82
TRT_ID
Definition:
TRT_ID.h:84
TRT_FillCablingData_SR1_ECC::m_3BL2_map
std::map< int, int > m_3BL2_map
Definition:
TRT_FillCablingData_SR1_ECC.h:112
TRT_FillCablingData_SR1_ECC::m_numberOfIdentifierSectors
int m_numberOfIdentifierSectors
Definition:
TRT_FillCablingData_SR1_ECC.h:85
TRT_CablingData
Definition:
TRT_CablingData.h:18
python.CaloScaleNoiseConfig.type
type
Definition:
CaloScaleNoiseConfig.py:78
GlobalCableMap
std::map< int, std::vector< GlobalCableMap_t * > > GlobalCableMap
Definition:
TRT_FillCablingData_Types.h:20
TRT_FillCablingData_SR1_ECC::fillData
TRT_CablingData * fillData()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:101
TRT_FillCablingData_SR1_ECC::m_2BS_2BL1_map
std::map< int, int > m_2BS_2BL1_map
Definition:
TRT_FillCablingData_SR1_ECC.h:110
TRT_FillCablingData_SR1_ECC::finalize
virtual StatusCode finalize()
Definition:
TRT_FillCablingData_SR1_ECC.cxx:92
TRT_FillCablingData_SR1_ECC::m_2FS_2FL1_map
std::map< int, int > m_2FS_2FL1_map
Definition:
TRT_FillCablingData_SR1_ECC.h:116
TRT_FillCablingData_SR1_ECC::m_ec_2r_map
std::map< int, int > m_ec_2r_map
Definition:
TRT_FillCablingData_SR1_ECC.h:126
AthAlgTool
Definition:
AthAlgTool.h:26
TRT_FillCablingData_SR1_ECC
Definition:
TRT_FillCablingData_SR1_ECC.h:37
TRT_FillCablingData_SR1_ECC::getRobID
std::vector< uint32_t > getRobID(Identifier id) const
Definition:
TRT_FillCablingData_SR1_ECC.cxx:1103
IdContext
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Definition:
IdContext.h:26
TRT_FillCablingData_SR1_ECC::m_phi_to_source
std::map< int, std::vector< uint32_t > > m_phi_to_source
Definition:
TRT_FillCablingData_SR1_ECC.h:92
Identifier
Definition:
IdentifierFieldParser.cxx:14
Generated on Sun Dec 22 2024 21:21:40 for ATLAS Offline Software by
1.8.18