ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonCablings
MuonTGC_Cabling
MuonTGC_Cabling
TGCCableASDToPP.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUONTGC_CABLING_TGCCABLEASDTOPP_H
6
#define MUONTGC_CABLING_TGCCABLEASDTOPP_H
7
8
#include <array>
9
#include <string>
10
#include <vector>
11
12
#include "
MuonTGC_Cabling/TGCCable.h
"
13
#include "
MuonTGC_Cabling/TGCDatabaseASDToPP.h
"
14
#include "
MuonTGC_Cabling/TGCId.h
"
15
16
namespace
MuonTGC_Cabling
{
17
18
class
TGCCableASDToPP
:
public
TGCCable
{
19
public
:
20
TGCCableASDToPP
(
const
std::string& fileName,
const
std::string& diffFile);
21
virtual
~TGCCableASDToPP
();
22
23
std::unique_ptr<TGCChannelId>
getChannel
(
const
TGCChannelId
& channelId,
24
bool
orChannel =
false
)
const
;
25
26
private
:
27
void
initialize
(
const
std::string& filename,
const
std::string& diffFile);
28
29
void
updateDatabase
(
const
std::string& diffFile);
30
31
std::unique_ptr<TGCChannelId>
getChannelIn
(
const
TGCChannelId
& ppin,
32
bool
orChannel =
false
)
const
;
33
std::unique_ptr<TGCChannelId>
getChannelOut
(
const
TGCChannelId
& asdout,
34
bool
orChannel =
false
)
const
;
35
36
std::vector<std::vector<int> >
getUpdateInfo
(
37
const
int
side,
const
int
sector,
38
const
std::vector<std::string>& diffFile,
const
std::string& blockname);
39
40
TGCDatabaseASDToPP
*
getDatabase
(
const
TGCId::SideType
side,
const
TGCId::RegionType
region,
41
const
int
sector,
const
TGCId::ModuleType
module)
const
;
42
43
void
updateIndividualDatabase
(
44
const
int
side,
const
int
sector,
45
const
std::vector<std::string>& diffFile,
const
std::string& blockname,
46
std::shared_ptr<TGCDatabaseASDToPP>& database);
47
48
private
:
49
// reverse layers in Forward sector
50
51
static
constexpr
std::array<int, 10>
s_stripForward
{2, 1, 0, 4, 3,
52
6, 5, 8, 7, 9};
53
54
private
:
55
using
ForwardSectorDB
=
56
std::array<std::array<std::shared_ptr<TGCDatabaseASDToPP>,
57
TGCId::NUM_FORWARD_SECTOR
>,
58
+
TGCId::SideType::MaxSideType
>;
59
using
InnerSectorDB
=
60
std::array<std::array<std::shared_ptr<TGCDatabaseASDToPP>,
61
TGCId::NUM_INNER_SECTOR
>,
62
+
TGCId::SideType::MaxSideType
>;
63
using
EndcapSectorDB
=
64
std::array<std::array<std::shared_ptr<TGCDatabaseASDToPP>,
65
TGCId::NUM_ENDCAP_SECTOR
>,
66
+
TGCId::SideType::MaxSideType
>;
67
68
ForwardSectorDB
m_FWDdb
{};
69
ForwardSectorDB
m_FSDdb
{};
70
ForwardSectorDB
m_FWTdb
{};
71
ForwardSectorDB
m_FSTdb
{};
72
InnerSectorDB
m_FWIdb
{};
73
InnerSectorDB
m_FSIdb
{};
74
75
EndcapSectorDB
m_EWDdb
{};
76
EndcapSectorDB
m_ESDdb
{};
77
EndcapSectorDB
m_EWTdb
{};
78
EndcapSectorDB
m_ESTdb
{};
79
InnerSectorDB
m_EWIdb
{};
80
InnerSectorDB
m_ESIdb
{};
81
83
using
CommonDB
= std::array<
84
std::array<std::shared_ptr<TGCDatabaseASDToPP>, +
TGCId::ModuleType::MaxModuleType
>,
85
+
TGCId::RegionType::MaxRegionType
>;
86
CommonDB
m_commonDb
{{{
nullptr
}}};
87
};
88
89
}
// namespace MuonTGC_Cabling
90
91
#endif
TGCCable.h
TGCDatabaseASDToPP.h
TGCId.h
MuonTGC_Cabling::TGCCableASDToPP::InnerSectorDB
std::array< std::array< std::shared_ptr< TGCDatabaseASDToPP >, TGCId::NUM_INNER_SECTOR >,+TGCId::SideType::MaxSideType > InnerSectorDB
Definition
TGCCableASDToPP.h:59
MuonTGC_Cabling::TGCCableASDToPP::m_ESDdb
EndcapSectorDB m_ESDdb
Definition
TGCCableASDToPP.h:76
MuonTGC_Cabling::TGCCableASDToPP::getDatabase
TGCDatabaseASDToPP * getDatabase(const TGCId::SideType side, const TGCId::RegionType region, const int sector, const TGCId::ModuleType module) const
Definition
TGCCableASDToPP.cxx:195
MuonTGC_Cabling::TGCCableASDToPP::m_EWDdb
EndcapSectorDB m_EWDdb
Definition
TGCCableASDToPP.h:75
MuonTGC_Cabling::TGCCableASDToPP::getUpdateInfo
std::vector< std::vector< int > > getUpdateInfo(const int side, const int sector, const std::vector< std::string > &diffFile, const std::string &blockname)
Definition
TGCCableASDToPP.cxx:133
MuonTGC_Cabling::TGCCableASDToPP::m_EWIdb
InnerSectorDB m_EWIdb
Definition
TGCCableASDToPP.h:79
MuonTGC_Cabling::TGCCableASDToPP::m_FSDdb
ForwardSectorDB m_FSDdb
Definition
TGCCableASDToPP.h:69
MuonTGC_Cabling::TGCCableASDToPP::m_FWIdb
InnerSectorDB m_FWIdb
Definition
TGCCableASDToPP.h:72
MuonTGC_Cabling::TGCCableASDToPP::updateDatabase
void updateDatabase(const std::string &diffFile)
Definition
TGCCableASDToPP.cxx:77
MuonTGC_Cabling::TGCCableASDToPP::m_FWDdb
ForwardSectorDB m_FWDdb
Definition
TGCCableASDToPP.h:68
MuonTGC_Cabling::TGCCableASDToPP::m_ESIdb
InnerSectorDB m_ESIdb
Definition
TGCCableASDToPP.h:80
MuonTGC_Cabling::TGCCableASDToPP::CommonDB
std::array< std::array< std::shared_ptr< TGCDatabaseASDToPP >,+TGCId::ModuleType::MaxModuleType >,+TGCId::RegionType::MaxRegionType > CommonDB
Pointers of common databases are recorded in this array.
Definition
TGCCableASDToPP.h:83
MuonTGC_Cabling::TGCCableASDToPP::getChannel
std::unique_ptr< TGCChannelId > getChannel(const TGCChannelId &channelId, bool orChannel=false) const
Definition
TGCCableASDToPP.cxx:281
MuonTGC_Cabling::TGCCableASDToPP::m_ESTdb
EndcapSectorDB m_ESTdb
Definition
TGCCableASDToPP.h:78
MuonTGC_Cabling::TGCCableASDToPP::~TGCCableASDToPP
virtual ~TGCCableASDToPP()
MuonTGC_Cabling::TGCCableASDToPP::m_commonDb
CommonDB m_commonDb
Definition
TGCCableASDToPP.h:86
MuonTGC_Cabling::TGCCableASDToPP::updateIndividualDatabase
void updateIndividualDatabase(const int side, const int sector, const std::vector< std::string > &diffFile, const std::string &blockname, std::shared_ptr< TGCDatabaseASDToPP > &database)
Definition
TGCCableASDToPP.cxx:387
MuonTGC_Cabling::TGCCableASDToPP::m_FSIdb
InnerSectorDB m_FSIdb
Definition
TGCCableASDToPP.h:73
MuonTGC_Cabling::TGCCableASDToPP::getChannelOut
std::unique_ptr< TGCChannelId > getChannelOut(const TGCChannelId &asdout, bool orChannel=false) const
Definition
TGCCableASDToPP.cxx:334
MuonTGC_Cabling::TGCCableASDToPP::ForwardSectorDB
std::array< std::array< std::shared_ptr< TGCDatabaseASDToPP >, TGCId::NUM_FORWARD_SECTOR >,+TGCId::SideType::MaxSideType > ForwardSectorDB
Definition
TGCCableASDToPP.h:55
MuonTGC_Cabling::TGCCableASDToPP::EndcapSectorDB
std::array< std::array< std::shared_ptr< TGCDatabaseASDToPP >, TGCId::NUM_ENDCAP_SECTOR >,+TGCId::SideType::MaxSideType > EndcapSectorDB
Definition
TGCCableASDToPP.h:63
MuonTGC_Cabling::TGCCableASDToPP::m_EWTdb
EndcapSectorDB m_EWTdb
Definition
TGCCableASDToPP.h:77
MuonTGC_Cabling::TGCCableASDToPP::getChannelIn
std::unique_ptr< TGCChannelId > getChannelIn(const TGCChannelId &ppin, bool orChannel=false) const
Definition
TGCCableASDToPP.cxx:293
MuonTGC_Cabling::TGCCableASDToPP::TGCCableASDToPP
TGCCableASDToPP(const std::string &fileName, const std::string &diffFile)
Definition
TGCCableASDToPP.cxx:17
MuonTGC_Cabling::TGCCableASDToPP::m_FWTdb
ForwardSectorDB m_FWTdb
Definition
TGCCableASDToPP.h:70
MuonTGC_Cabling::TGCCableASDToPP::s_stripForward
static constexpr std::array< int, 10 > s_stripForward
Definition
TGCCableASDToPP.h:51
MuonTGC_Cabling::TGCCableASDToPP::m_FSTdb
ForwardSectorDB m_FSTdb
Definition
TGCCableASDToPP.h:71
MuonTGC_Cabling::TGCCable::TGCCable
TGCCable(CableType type=NoCableType)
Definition
TGCCable.h:31
MuonTGC_Cabling::TGCChannelId
Definition
TGCChannelId.h:17
MuonTGC_Cabling::TGCDatabaseASDToPP
Definition
TGCDatabaseASDToPP.h:12
MuonTGC_Cabling::TGCId::NUM_INNER_SECTOR
static constexpr int NUM_INNER_SECTOR
Definition
TGCId.h:45
MuonTGC_Cabling::TGCId::ModuleType
ModuleType
Definition
TGCId.h:51
MuonTGC_Cabling::TGCId::ModuleType::MaxModuleType
@ MaxModuleType
Definition
TGCId.h:54
MuonTGC_Cabling::TGCId::NUM_ENDCAP_SECTOR
static constexpr int NUM_ENDCAP_SECTOR
Definition
TGCId.h:43
MuonTGC_Cabling::TGCId::RegionType
RegionType
Definition
TGCId.h:59
MuonTGC_Cabling::TGCId::RegionType::MaxRegionType
@ MaxRegionType
Definition
TGCId.h:59
MuonTGC_Cabling::TGCId::SideType
SideType
Definition
TGCId.h:48
MuonTGC_Cabling::TGCId::SideType::MaxSideType
@ MaxSideType
Definition
TGCId.h:48
MuonTGC_Cabling::TGCId::NUM_FORWARD_SECTOR
static constexpr int NUM_FORWARD_SECTOR
Definition
TGCId.h:44
MuonTGC_Cabling
Definition
TGCCable.h:12
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0