ATLAS Offline Software
Loading...
Searching...
No Matches
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 */
17
18#include "Identifier/Identifier.h"
21
22#include "TRT_CablingData.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
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
42
43 //AlgTool InterfaceID
44 static const InterfaceID& interfaceID();
45
46 virtual StatusCode initialize();
47 virtual StatusCode finalize();
48
49 // Fill the data
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();
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
65 StringProperty m_inputFilename;
66
68
69 std::set< uint32_t > m_validSourceIds;
70
72
74
75 // Define parameters
76 void defineParameters();
77
78 // Fill Tables with IDs for all straws
79 void defineTables();
81
84
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
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
This is an Identifier helper class for the TRT subdetector.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Definition IdContext.h:26
static const InterfaceID & interfaceID()
std::map< int, int > m_eca_l0_map
std::vector< std::vector< IdentifierHash > * > m_collID
std::map< int, int > m_ecc_r1_map
void fillCollID_broken_FDR(uint32_t rob_id, std::vector< IdentifierHash > &ids)
std::vector< std::vector< IdentifierHash > > m_identfierHashForAllStraws
std::map< int, int > m_eca_r0_map
std::map< int, int > m_eca_l1_map
TRT_FillCablingData_DC3(const std::string &type, const std::string &name, const IInterface *parent)
std::map< int, int > m_ecc_l0_map
std::vector< std::vector< Identifier > > m_identfierForAllStraws
std::map< int, int > m_eca_r1_map
std::map< int, int > m_barrel_c_map
std::vector< uint32_t > getRobID(Identifier id) const
std::map< int, int > m_barrel_a_map
std::set< uint32_t > m_validSourceIds
std::map< int, int > m_ecc_l1_map
std::map< int, int > m_ecc_r0_map
void fillCollID(uint32_t rob_id, std::vector< IdentifierHash > &ids)
std::vector< int > m_numberOfStrawsInLayers
This is an Identifier helper class for the TRT subdetector.
Definition TRT_ID.h:82