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