ATLAS Offline Software
Loading...
Searching...
No Matches
TRT_DetElementContainer.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#ifndef TRT_READOUTGEOMETRY_TRT_DETELEMENTCONTAINER_H
6#define TRT_READOUTGEOMETRY_TRT_DETELEMENTCONTAINER_H
7
9#include "TRT_Numerology.h"
12
13#include <vector>
14
15namespace InDetDD {
16
17class TRT_BaseElement;
20class TRT_Numerology;
21
23
25{
26
27 public:
28
31 // disable implicit copy constructor
33 // disable implicit assignment operator
35
36 void setNumerology(const TRT_Numerology* mynum);
37
39
41
42 void manageBarrelElement(TRT_BarrelElement *barrel, const TRT_ID* idHelper);
43
44 void manageEndcapElement(TRT_EndcapElement *endcap, const TRT_ID* idHelper);
45
48
49 const TRT_Numerology* getTRTNumerology() const;
50
51 const TRT_BarrelElement *getBarrelDetElement(unsigned int positive
52 , unsigned int moduleIndex
53 , unsigned int phiIndex
54 , unsigned int strawLayerIndex) const;
55
56 TRT_BarrelElement *getBarrelDetElement(unsigned int positive
57 , unsigned int moduleIndex
58 , unsigned int phiIndex
59 , unsigned int strawLayerIndex);
60
61 const TRT_EndcapElement *getEndcapDetElement(unsigned int positive
62 , unsigned int wheelIndex
63 , unsigned int strawLayerIndex
64 , unsigned int phiIndex) const;
65
66 TRT_EndcapElement *getEndcapDetElement(unsigned int positive
67 , unsigned int wheelIndex
68 , unsigned int strawLayerIndex
69 , unsigned int phiIndex);
70
71 void clear();
72
73 private:
74
75 TRT_DetElementCollection m_trtcoll; //This is a DataVector so owns its elements
77
78 enum {NMODMAX=3};
79 enum {NWHEELMAX=18};
80 enum {NPHIMAX=32};
81 enum {NSTRAWLAYMAXBR=30};
82 enum {NSTRAWLAYMAXEC=16};
83
86
87};
88
89} // namespace InDetDD
90
93#include "AthenaKernel/CondCont.h"
95
96#endif // INDETREADOUTGEOMETRY_TRT_DETELEMENTCONTAINER_H
#define CONDCONT_DEF(...)
Definition CondCont.h:1413
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
This is an Identifier helper class for the TRT subdetector.
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Extended TRT_BaseElement to describe a TRT readout element, this is a planar layer with n ( order of ...
Virtual base class of TRT readout elements.
Class to hold collection of TRT detector elements.
Class to hold different TRT detector elements structures.
TRT_EndcapElement * m_ecArray[2][NWHEELMAX][NSTRAWLAYMAXEC][NPHIMAX]
void manageEndcapElement(TRT_EndcapElement *endcap, const TRT_ID *idHelper)
void manageBarrelElement(TRT_BarrelElement *barrel, const TRT_ID *idHelper)
const TRT_DetElementCollection * getElements() const
void addEndcapElement(TRT_EndcapElement *element)
TRT_DetElementContainer(const TRT_DetElementContainer &other)=delete
void setNumerology(const TRT_Numerology *mynum)
const TRT_EndcapElement * getEndcapDetElement(unsigned int positive, unsigned int wheelIndex, unsigned int strawLayerIndex, unsigned int phiIndex) const
TRT_BarrelElement * m_baArray[2][NMODMAX][NPHIMAX][NSTRAWLAYMAXBR]
const TRT_BarrelElement * getBarrelDetElement(unsigned int positive, unsigned int moduleIndex, unsigned int phiIndex, unsigned int strawLayerIndex) const
void operator=(const TRT_DetElementContainer &other)=delete
const TRT_Numerology * getTRTNumerology() const
void addBarrelElement(TRT_BarrelElement *element)
Extended class of a TRT_BaseElement to describe a readout elment in the endcap.
Helper class to organize the straw elements on TRT readout elements.
This is an Identifier helper class for the TRT subdetector.
Definition TRT_ID.h:82
Message Stream Member.