ATLAS Offline Software
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
MMDetectorDescription Class Reference

#include <MMDetectorDescription.h>

Inheritance diagram for MMDetectorDescription:
Collaboration diagram for MMDetectorDescription:

Public Member Functions

 MMDetectorDescription (const std::string &s, AGDDDetectorStore &ds)
 
void Register ()
 
double sWidth () const
 
double lWidth () const
 
double Length () const
 
double Tck () const
 
void xFrame (double y)
 
double xFrame () const
 
void ysFrame (double y)
 
double ysFrame () const
 
void ylFrame (double y)
 
double ylFrame () const
 
MuonGM::MM_TechnologyGetTechnology ()
 
MMReadoutParametersGetReadoutParameters ()
 
virtual void SetXYZ (const std::vector< double > &v)
 
void small_x (double x)
 
double small_x () const
 
void large_x (double x)
 
double large_x () const
 
void y (double yval)
 
double y () const
 
void z (double zval)
 
double z () const
 
void subType (const std::string &s)
 
const std::string & subType () const
 
const std::string & GetName () const
 
const std::string & DetectorType () const
 
const std::string & DetectorID () const
 
void SetAddressAndPosition (AGDDDetectorPositioner *)
 
std::vector< AGDDDetectorPositioner * > & GetDetectorPositioners ()
 

Public Attributes

MMReadoutParameters roParameters
 
std::string tech
 

Protected Member Functions

void SetDetectorAddress (AGDDDetectorPositioner *)
 
GeoMaterial * GetMMMaterial (std::string)
 
void AddDetectorPosition (AGDDDetectorPositioner *p)
 

Protected Attributes

double m_xFrame = 0.0
 
double m_ysFrame = 0.0
 
double m_ylFrame = 0.0
 
AGDDDetectorStorem_ds
 
double m_small_x
 
double m_large_x
 
double m_y
 
double m_z
 
std::string m_detectorType
 
std::string m_detectorID
 
std::string m_sType
 
std::vector< AGDDDetectorPositioner * > m_detectorPositions
 
std::string m_name
 

Detailed Description

Definition at line 45 of file MMDetectorDescription.h.

Constructor & Destructor Documentation

◆ MMDetectorDescription()

MMDetectorDescription::MMDetectorDescription ( const std::string &  s,
AGDDDetectorStore ds 
)

Definition at line 14 of file MMDetectorDescription.cxx.

15  :
16  AGDDDetector(s,"Micromegas"),
17  m_ds (ds)
18 {
19 }

Member Function Documentation

◆ AddDetectorPosition()

void AGDDDetector::AddDetectorPosition ( AGDDDetectorPositioner p)
protectedinherited

Definition at line 19 of file AGDDDetector.cxx.

20 {
21  m_detectorPositions.push_back(p);
22 }

◆ DetectorID()

const std::string& AGDDDetector::DetectorID ( ) const
inlineinherited

Definition at line 43 of file AGDDDetector.h.

43 {return m_detectorID;}

◆ DetectorType()

const std::string& AGDDDetector::DetectorType ( ) const
inlineinherited

Definition at line 42 of file AGDDDetector.h.

42 {return m_detectorType;}

◆ GetDetectorPositioners()

std::vector< AGDDDetectorPositioner * > & AGDDDetector::GetDetectorPositioners ( )
inherited

Definition at line 14 of file AGDDDetector.cxx.

15 {
16  return m_detectorPositions;
17 }

◆ GetMMMaterial()

GeoMaterial* AGDDDetector::GetMMMaterial ( std::string  )
protectedinherited

◆ GetName()

const std::string& AGDDDetector::GetName ( ) const
inlineinherited

Definition at line 40 of file AGDDDetector.h.

40 {return m_name;}

◆ GetReadoutParameters()

MMReadoutParameters& MMDetectorDescription::GetReadoutParameters ( )
inline

Definition at line 69 of file MMDetectorDescription.h.

69 {return roParameters;}

◆ GetTechnology()

MuonGM::MM_Technology * MMDetectorDescription::GetTechnology ( )

Definition at line 47 of file MMDetectorDescription.cxx.

48 {
51  return t;
52 }

◆ large_x() [1/2]

double AGDDDetector::large_x ( ) const
inlineinherited

Definition at line 34 of file AGDDDetector.h.

34 {return m_large_x;}

◆ large_x() [2/2]

void AGDDDetector::large_x ( double  x)
inlineinherited

Definition at line 29 of file AGDDDetector.h.

29 {m_large_x=x;}

◆ Length()

double MMDetectorDescription::Length ( ) const
inline

Definition at line 53 of file MMDetectorDescription.h.

53 {return y();}

◆ lWidth()

double MMDetectorDescription::lWidth ( ) const
inline

Definition at line 52 of file MMDetectorDescription.h.

52 {return large_x();}

◆ Register()

void MMDetectorDescription::Register ( )

Definition at line 21 of file MMDetectorDescription.cxx.

22 {
23  m_ds.RegisterDetector(this);
24 }

◆ SetAddressAndPosition()

void AGDDDetector::SetAddressAndPosition ( AGDDDetectorPositioner p)
inherited

Definition at line 8 of file AGDDDetector.cxx.

9 {
12 }

◆ SetDetectorAddress()

void MMDetectorDescription::SetDetectorAddress ( AGDDDetectorPositioner p)
protectedvirtual

Implements AGDDDetector.

Definition at line 27 of file MMDetectorDescription.cxx.

28 {
29  //std::cout<<"This is AGDDMicromegas::SetDetectorAddress "<<GetName()<<" "<<
30  //m_sType;
31  p->ID.detectorType="Micromegas";
32  p->theDetector=this;
33  std::stringstream stringone;
34  char side='A';
35  if (p->ID.sideIndex<0) side='C';
36  int ctype=0;
37  std::string_view subt = subType();
38  int ml=myatoi(subt.substr(3,1));
39  if (subt[2]=='L') ctype=1;
40  else if (subt[2]=='S') ctype=3;
41  int etaIndex=myatoi(subt.substr(1,1));
42  stringone<<"sMD"<<ctype<<'-'<<etaIndex<<'-'<<ml<<"-phi"<<p->ID.phiIndex+1<<side<<std::endl;
43  //std::cout<<" stringone "<<stringone.str()<<std::endl;
44  p->ID.detectorAddress=stringone.str();
45 }

◆ SetXYZ()

virtual void AGDDDetector::SetXYZ ( const std::vector< double > &  v)
inlinevirtualinherited

Reimplemented in sTGCDetectorDescription.

Definition at line 20 of file AGDDDetector.h.

21  {
22  m_small_x=v[0];
23  m_large_x=v[1];
24  m_y=v[2];
25  m_z=v[3];
26  }

◆ small_x() [1/2]

double AGDDDetector::small_x ( ) const
inlineinherited

Definition at line 33 of file AGDDDetector.h.

33 {return m_small_x;}

◆ small_x() [2/2]

void AGDDDetector::small_x ( double  x)
inlineinherited

Definition at line 28 of file AGDDDetector.h.

28 {m_small_x=x;}

◆ subType() [1/2]

const std::string& AGDDDetector::subType ( ) const
inlineinherited

Definition at line 37 of file AGDDDetector.h.

37 {return m_sType;}

◆ subType() [2/2]

void AGDDDetector::subType ( const std::string &  s)
inlineinherited

Definition at line 32 of file AGDDDetector.h.

32 {m_sType=s;}

◆ sWidth()

double MMDetectorDescription::sWidth ( ) const
inline

Definition at line 51 of file MMDetectorDescription.h.

51 {return small_x();}

◆ Tck()

double MMDetectorDescription::Tck ( ) const
inline

Definition at line 54 of file MMDetectorDescription.h.

54 {return z();}

◆ xFrame() [1/2]

double MMDetectorDescription::xFrame ( ) const
inline

Definition at line 57 of file MMDetectorDescription.h.

57 {return m_xFrame;}

◆ xFrame() [2/2]

void MMDetectorDescription::xFrame ( double  y)
inline

Definition at line 56 of file MMDetectorDescription.h.

56 {m_xFrame=y;}

◆ y() [1/2]

double AGDDDetector::y ( ) const
inlineinherited

Definition at line 35 of file AGDDDetector.h.

35 {return m_y;}

◆ y() [2/2]

void AGDDDetector::y ( double  yval)
inlineinherited

Definition at line 30 of file AGDDDetector.h.

30 {m_y=yval;}

◆ ylFrame() [1/2]

double MMDetectorDescription::ylFrame ( ) const
inline

Definition at line 63 of file MMDetectorDescription.h.

63 {return m_ylFrame;}

◆ ylFrame() [2/2]

void MMDetectorDescription::ylFrame ( double  y)
inline

Definition at line 62 of file MMDetectorDescription.h.

62 {m_ylFrame=y;}

◆ ysFrame() [1/2]

double MMDetectorDescription::ysFrame ( ) const
inline

Definition at line 60 of file MMDetectorDescription.h.

60 {return m_ysFrame;}

◆ ysFrame() [2/2]

void MMDetectorDescription::ysFrame ( double  y)
inline

Definition at line 59 of file MMDetectorDescription.h.

59 {m_ysFrame=y;}

◆ z() [1/2]

double AGDDDetector::z ( ) const
inlineinherited

Definition at line 36 of file AGDDDetector.h.

36 {return m_z;}

◆ z() [2/2]

void AGDDDetector::z ( double  zval)
inlineinherited

Definition at line 31 of file AGDDDetector.h.

31 {m_z=zval;}

Member Data Documentation

◆ m_detectorID

std::string AGDDDetector::m_detectorID
protectedinherited

Definition at line 57 of file AGDDDetector.h.

◆ m_detectorPositions

std::vector<AGDDDetectorPositioner*> AGDDDetector::m_detectorPositions
protectedinherited

Definition at line 66 of file AGDDDetector.h.

◆ m_detectorType

std::string AGDDDetector::m_detectorType
protectedinherited

Definition at line 56 of file AGDDDetector.h.

◆ m_ds

AGDDDetectorStore& MMDetectorDescription::m_ds
protected

Definition at line 76 of file MMDetectorDescription.h.

◆ m_large_x

double AGDDDetector::m_large_x
protectedinherited

Definition at line 51 of file AGDDDetector.h.

◆ m_name

std::string AGDDDetector::m_name
protectedinherited

Definition at line 68 of file AGDDDetector.h.

◆ m_small_x

double AGDDDetector::m_small_x
protectedinherited

Definition at line 50 of file AGDDDetector.h.

◆ m_sType

std::string AGDDDetector::m_sType
protectedinherited

Definition at line 59 of file AGDDDetector.h.

◆ m_xFrame

double MMDetectorDescription::m_xFrame = 0.0
protected

Definition at line 72 of file MMDetectorDescription.h.

◆ m_y

double AGDDDetector::m_y
protectedinherited

Definition at line 52 of file AGDDDetector.h.

◆ m_ylFrame

double MMDetectorDescription::m_ylFrame = 0.0
protected

Definition at line 74 of file MMDetectorDescription.h.

◆ m_ysFrame

double MMDetectorDescription::m_ysFrame = 0.0
protected

Definition at line 73 of file MMDetectorDescription.h.

◆ m_z

double AGDDDetector::m_z
protectedinherited

Definition at line 53 of file AGDDDetector.h.

◆ roParameters

MMReadoutParameters MMDetectorDescription::roParameters

Definition at line 67 of file MMDetectorDescription.h.

◆ tech

std::string AGDDDetector::tech
inherited

Definition at line 38 of file AGDDDetector.h.


The documentation for this class was generated from the following files:
checkxAOD.ds
ds
Definition: Tools/PyUtils/bin/checkxAOD.py:257
python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
myatoi
int myatoi(std::string_view str)
Definition: MMDetectorHelper.cxx:34
AGDDDetector::m_sType
std::string m_sType
Definition: AGDDDetector.h:59
AGDDDetector::m_detectorID
std::string m_detectorID
Definition: AGDDDetector.h:57
MuonGM::MM_Technology
Definition: MuonAGDDDescription/MuonAGDDDescription/MM_Technology.h:16
AGDDDetector::m_large_x
double m_large_x
Definition: AGDDDetector.h:51
AGDDDetector::y
double y() const
Definition: AGDDDetector.h:35
AGDDDetectorStore::RegisterDetector
void RegisterDetector(AGDDDetector *)
Definition: AGDDDetectorStore.cxx:17
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
AGDDDetector::m_z
double m_z
Definition: AGDDDetector.h:53
x
#define x
MMDetectorDescription::roParameters
MMReadoutParameters roParameters
Definition: MMDetectorDescription.h:67
AGDDDetector::GetName
const std::string & GetName() const
Definition: AGDDDetector.h:40
AGDDDetector::m_y
double m_y
Definition: AGDDDetector.h:52
AGDDDetector::large_x
double large_x() const
Definition: AGDDDetector.h:34
TRT::Hit::side
@ side
Definition: HitInfo.h:83
AGDDDetector::m_name
std::string m_name
Definition: AGDDDetector.h:68
AGDDDetector::m_small_x
double m_small_x
Definition: AGDDDetector.h:50
AGDDDetector::z
double z() const
Definition: AGDDDetector.h:36
AGDDDetector::m_detectorPositions
std::vector< AGDDDetectorPositioner * > m_detectorPositions
Definition: AGDDDetector.h:66
AGDDDetector::subType
const std::string & subType() const
Definition: AGDDDetector.h:37
AGDDDetector::AGDDDetector
AGDDDetector(const std::string &s)
Definition: AGDDDetector.h:17
plotting.yearwise_efficiency.yval
float yval
Definition: yearwise_efficiency.py:43
MMDetectorDescription::m_ylFrame
double m_ylFrame
Definition: MMDetectorDescription.h:74
MMDetectorDescription::m_ysFrame
double m_ysFrame
Definition: MMDetectorDescription.h:73
AGDDDetector::small_x
double small_x() const
Definition: AGDDDetector.h:33
AGDDDetectorStore::GetTechnology
AGDDTechnology * GetTechnology(const std::string &s)
Definition: AGDDDetectorStore.h:22
python.PyAthena.v
v
Definition: PyAthena.py:157
AGDDDetector::AddDetectorPosition
void AddDetectorPosition(AGDDDetectorPositioner *p)
Definition: AGDDDetector.cxx:19
AGDDDetector::m_detectorType
std::string m_detectorType
Definition: AGDDDetector.h:56
MMDetectorDescription::m_ds
AGDDDetectorStore & m_ds
Definition: MMDetectorDescription.h:76
MMDetectorDescription::m_xFrame
double m_xFrame
Definition: MMDetectorDescription.h:72
AGDDDetector::SetDetectorAddress
virtual void SetDetectorAddress(AGDDDetectorPositioner *)=0