ATLAS Offline Software
TGCElectronicsSystem.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TGCElectronicsSystem_hh
6 #define TGCElectronicsSystem_hh
7 
10 
11 #include <memory>
12 
13 namespace LVL1TGC {
14 class TGCTMDB;
15 class TGCNSW;
16 class TGCBIS78;
17 }
18 
19 namespace LVL1TGCTrigger {
20 
21 const int NumberOfOctant = 8;
22 const int NumberOfModule = 15;
23 const int NumberOfSignalTypes = 2; // 1=WIRE, 2=STRIP
24 const int NumberOfLayers = 9; // 0,1,2: Tpl, 3,4: Dbl, 5,6: Inner 8,9
25 const int NumberOfRegions = 2; // 1=Forward, 2=ENdcap
26 
27 class TGCEvent;
28 class TGCDatabaseManager;
29 class TGCSector;
30 
32  public:
34  virtual ~TGCElectronicsSystem();
35 
38  int getNumberOfOctant() const { return NumberOfOctant; }
39  int getNumberOfModule() const { return NumberOfModule; }
40 
41  TGCRegionType getRegionType(int mod) const;
42  TGCForwardBackwardType getForwardBackward(int side, int oct, int mod) const;
43  int getSectorId(int side, int oct, int mod) const;
45  TGCSector* getSector(int side, int oct, int mod) const {
46  if ( (side<0) || (oct<0) || (mod<0) ) return 0;
47  return m_sector[side][oct][mod];
48  };
49  std::shared_ptr<LVL1TGC::TGCTMDB> getTMDB() const {return m_tmdb;}
50  std::shared_ptr<LVL1TGC::TGCNSW> getNSW() const {return m_nsw;}
51  std::shared_ptr<LVL1TGC::TGCBIS78> getBIS78() const {return m_bis78;}
52 
54  const TGCArguments* tgcArgs() const { return m_tgcArgs;}
55 
56  private:
57  // hide default/copy constructor and assignment operator
61 
62  private:
65  // Other Inner systems
66  std::shared_ptr<LVL1TGC::TGCTMDB> m_tmdb{nullptr};
67  std::shared_ptr<LVL1TGC::TGCNSW> m_nsw{nullptr};
68  std::shared_ptr<LVL1TGC::TGCBIS78> m_bis78{nullptr};
69 
71 };
72 
73 
74 } // end of namespace
75 
76 #endif // TGCElectronicsSystem_hh
LVL1TGCTrigger::TGCSector
Definition: TGCSector.h:31
LVL1TGCTrigger::TGCElectronicsSystem::getTMDB
std::shared_ptr< LVL1TGC::TGCTMDB > getTMDB() const
Definition: TGCElectronicsSystem.h:49
LVL1TGCTrigger::TGCElectronicsSystem::getForwardBackward
TGCForwardBackwardType getForwardBackward(int side, int oct, int mod) const
Definition: TGCElectronicsSystem.cxx:109
LVL1TGCTrigger::NumberOfLayers
const int NumberOfLayers
Definition: TGCElectronicsSystem.h:24
LVL1TGCTrigger::TGCElectronicsSystem::getSector
TGCSector * getSector(int side, int oct, int mod) const
Definition: TGCElectronicsSystem.h:45
LVL1TGCTrigger::TGCElectronicsSystem::getNSW
std::shared_ptr< LVL1TGC::TGCNSW > getNSW() const
Definition: TGCElectronicsSystem.h:50
LVL1TGCTrigger::TGCElectronicsSystem::getSectorId
int getSectorId(int side, int oct, int mod) const
Definition: TGCElectronicsSystem.cxx:174
LVL1TGCTrigger::TGCElectronicsSystem::m_bis78
std::shared_ptr< LVL1TGC::TGCBIS78 > m_bis78
Definition: TGCElectronicsSystem.h:68
index
Definition: index.py:1
LVL1TGCTrigger::TGCElectronicsSystem::m_tgcArgs
TGCArguments * m_tgcArgs
Definition: TGCElectronicsSystem.h:70
LVL1TGCTrigger::TGCElectronicsSystem::getSector
TGCSector * getSector(const TGCReadoutIndex &index) const
Definition: TGCElectronicsSystem.cxx:179
LVL1TGCTrigger::TGCElectronicsSystem::getNumberOfOctant
int getNumberOfOctant() const
Definition: TGCElectronicsSystem.h:38
LVL1TGCTrigger::TGCForwardBackwardType
TGCForwardBackwardType
Definition: TGCNumbering.h:59
LVL1TGCTrigger::TGCElectronicsSystem::m_nsw
std::shared_ptr< LVL1TGC::TGCNSW > m_nsw
Definition: TGCElectronicsSystem.h:67
LVL1TGCTrigger::TGCElectronicsSystem::getBIS78
std::shared_ptr< LVL1TGC::TGCBIS78 > getBIS78() const
Definition: TGCElectronicsSystem.h:51
LVL1TGCTrigger::NumberOfRegions
const int NumberOfRegions
Definition: TGCElectronicsSystem.h:25
TRT::Hit::side
@ side
Definition: HitInfo.h:83
LVL1TGCTrigger::TGCElectronicsSystem::m_DB
TGCDatabaseManager * m_DB
Definition: TGCElectronicsSystem.h:63
LVL1TGCTrigger::TGCElectronicsSystem::tgcArgs
const TGCArguments * tgcArgs() const
Definition: TGCElectronicsSystem.h:54
LVL1TGCTrigger::NumberOfOctant
const int NumberOfOctant
Definition: TGCElectronicsSystem.h:21
maskDeadModules.mod
mod
Definition: maskDeadModules.py:36
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
python.subdetectors.mmg.database
database
Definition: mmg.py:6
LVL1TGCTrigger::TGCElectronicsSystem::getNumberOfSector
int getNumberOfSector() const
Definition: TGCElectronicsSystem.h:37
LVL1TGC
Definition: BigWheelCoincidenceLUT.cxx:20
TGCReadoutIndex.h
LVL1TGCTrigger::TGCElectronicsSystem::operator=
TGCElectronicsSystem & operator=(const TGCElectronicsSystem &right)=delete
LVL1TGCTrigger::TGCElectronicsSystem::~TGCElectronicsSystem
virtual ~TGCElectronicsSystem()
Definition: TGCElectronicsSystem.cxx:185
LVL1TGCTrigger::TGCEvent
Definition: TGCEvent.h:15
LVL1TGCTrigger::TGCElectronicsSystem
Definition: TGCElectronicsSystem.h:31
LVL1TGCTrigger
Definition: LVL1TGCTrigger.cxx:47
LVL1TGCTrigger::TGCElectronicsSystem::TGCElectronicsSystem
TGCElectronicsSystem(const TGCElectronicsSystem &right)=delete
LVL1TGCTrigger::TGCDatabaseManager
Definition: TGCDatabaseManager.h:39
LVL1TGCTrigger::TGCArguments
Definition: TGCArguments.h:12
LVL1TGCTrigger::TGCElectronicsSystem::m_sector
TGCSector * m_sector[LVL1TGC::kNSide][NumberOfOctant][NumberOfModule]
Definition: TGCElectronicsSystem.h:64
LVL1TGCTrigger::TGCElectronicsSystem::getNumberOfModule
int getNumberOfModule() const
Definition: TGCElectronicsSystem.h:39
LVL1TGCTrigger::TGCElectronicsSystem::m_tmdb
std::shared_ptr< LVL1TGC::TGCTMDB > m_tmdb
Definition: TGCElectronicsSystem.h:66
LVL1TGCTrigger::TGCRegionType
TGCRegionType
Definition: TGCNumbering.h:49
LVL1TGCTrigger::TGCElectronicsSystem::distributeSignal
void distributeSignal(TGCEvent *event)
Definition: TGCElectronicsSystem.cxx:16
LVL1TGCTrigger::TGCElectronicsSystem::getRegionType
TGCRegionType getRegionType(int mod) const
Definition: TGCElectronicsSystem.cxx:88
LVL1TGC::kNSide
@ kNSide
Definition: TGCNumbering.h:16
LVL1TGCTrigger::TGCReadoutIndex
Definition: TGCReadoutIndex.h:13
LVL1TGCTrigger::NumberOfModule
const int NumberOfModule
Definition: TGCElectronicsSystem.h:22
LVL1TGCTrigger::TGCElectronicsSystem::TGCElectronicsSystem
TGCElectronicsSystem()
Definition: TGCElectronicsSystem.cxx:36
TGCArguments.h
LVL1TGCTrigger::TGCElectronicsSystem::tgcArgs
TGCArguments * tgcArgs()
Definition: TGCElectronicsSystem.h:53
LVL1TGCTrigger::NumberOfSignalTypes
const int NumberOfSignalTypes
Definition: TGCElectronicsSystem.h:23