ATLAS Offline Software
Loading...
Searching...
No Matches
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}
AGDDDetector(const std::string &s)

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}
std::vector< AGDDDetectorPositioner * > m_detectorPositions

◆ DetectorID()

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

Definition at line 43 of file AGDDDetector.h.

43{return m_detectorID;}
std::string m_detectorID

◆ DetectorType()

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

Definition at line 42 of file AGDDDetector.h.

42{return m_detectorType;}
std::string m_detectorType

◆ GetDetectorPositioners()

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

Definition at line 14 of file AGDDDetector.cxx.

15{
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;}
std::string m_name

◆ GetReadoutParameters()

MMReadoutParameters & MMDetectorDescription::GetReadoutParameters ( )
inline

Definition at line 69 of file MMDetectorDescription.h.

69{return roParameters;}
MMReadoutParameters roParameters

◆ GetTechnology()

MuonGM::MM_Technology * MMDetectorDescription::GetTechnology ( )

Definition at line 47 of file MMDetectorDescription.cxx.

48{
49 MuonGM::MM_Technology* t =
50 dynamic_cast<MuonGM::MM_Technology*>(m_ds.GetTechnology(GetName()));
51 return t;
52}
const std::string & GetName() const

◆ large_x() [1/2]

double AGDDDetector::large_x ( ) const
inlineinherited

Definition at line 34 of file AGDDDetector.h.

34{return m_large_x;}
double 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;}
#define x

◆ Length()

double MMDetectorDescription::Length ( ) const
inline

Definition at line 53 of file MMDetectorDescription.h.

53{return y();}
double y() const

◆ lWidth()

double MMDetectorDescription::lWidth ( ) const
inline

Definition at line 52 of file MMDetectorDescription.h.

52{return large_x();}
double large_x() const

◆ 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}
virtual void SetDetectorAddress(AGDDDetectorPositioner *)=0
void AddDetectorPosition(AGDDDetectorPositioner *p)

◆ 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}
int myatoi(std::string_view str)
const std::string & subType() const

◆ 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 }
double m_small_x

◆ 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;}
std::string m_sType

◆ subType() [2/2]

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

Definition at line 32 of file AGDDDetector.h.

◆ sWidth()

double MMDetectorDescription::sWidth ( ) const
inline

Definition at line 51 of file MMDetectorDescription.h.

51{return small_x();}
double small_x() const

◆ Tck()

double MMDetectorDescription::Tck ( ) const
inline

Definition at line 54 of file MMDetectorDescription.h.

54{return z();}
double z() const

◆ xFrame() [1/2]

double MMDetectorDescription::xFrame ( ) const
inline

Definition at line 57 of file MMDetectorDescription.h.

◆ xFrame() [2/2]

void MMDetectorDescription::xFrame ( double y)
inline

Definition at line 56 of file MMDetectorDescription.h.

56{m_xFrame=y;}
void y(double yval)

◆ 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

◆ ylFrame() [1/2]

double MMDetectorDescription::ylFrame ( ) const
inline

Definition at line 63 of file MMDetectorDescription.h.

◆ 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.

◆ 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: