CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
ME0EtaPartitionSpecs Class Reference

#include <ME0EtaPartitionSpecs.h>

Inheritance diagram for ME0EtaPartitionSpecs:
GeomDetType

Public Types

typedef std::vector< float > ME0Specs
 
- Public Types inherited from GeomDetType
typedef GeomDetEnumerators::SubDetector SubDetector
 

Public Member Functions

const std::string & detName () const
 
 ME0EtaPartitionSpecs (SubDetector rss, const std::string &name, const ME0Specs &pars)
 
const TopologypadTopology () const
 
const ME0Specsparameters () const
 
const StripTopologyspecificPadTopology () const
 
const StripTopologyspecificTopology () const
 
const Topologytopology () const override
 
 ~ME0EtaPartitionSpecs () override
 
- Public Member Functions inherited from GeomDetType
 GeomDetType (const std::string &name, SubDetector subdet)
 
bool isBarrel () const
 
bool isCSC () const
 
bool isDT () const
 
bool isEndcap () const
 
bool isGEM () const
 
bool isInnerTracker () const
 
bool isME0 () const
 
bool isMuon () const
 
bool isOuterTracker () const
 
bool isRPC () const
 
bool isTiming () const
 
bool isTracker () const
 
bool isTrackerPixel () const
 
bool isTrackerStrip () const
 
const std::string & name () const
 
SubDetector subDetector () const
 
virtual ~GeomDetType ()
 

Private Attributes

std::string _n
 
std::vector< float > _p
 
StripTopology_top
 topology of strips More...
 
StripTopology_top_pad
 topology of trigger pads (pad = bundle of strips, basically, a "fat" strip) More...
 

Detailed Description

Storage of the parameters of the ME0 Chamber using standard topologies

Author
M. Maggi - INFN Bari

Definition at line 18 of file ME0EtaPartitionSpecs.h.

Member Typedef Documentation

◆ ME0Specs

typedef std::vector<float> ME0EtaPartitionSpecs::ME0Specs

Definition at line 20 of file ME0EtaPartitionSpecs.h.

Constructor & Destructor Documentation

◆ ME0EtaPartitionSpecs()

ME0EtaPartitionSpecs::ME0EtaPartitionSpecs ( SubDetector  rss,
const std::string &  name,
const ME0Specs pars 
)

Definition at line 7 of file ME0EtaPartitionSpecs.cc.

8  : GeomDetType(name, rss), _p(pars), _n(name) {
9  if (rss == ME0) {
10  float b = _p[0];
11  float B = _p[1];
12  float h = _p[2];
13  float r0 = h * (B + b) / (B - b);
14  float striplength = h * 2;
15  float strips = _p[3];
16  float pitch = (b + B) / strips;
17  int nstrip = static_cast<int>(strips);
18  _top = new TrapezoidalStripTopology(nstrip, pitch, striplength, r0);
19 
20  float pads = _p[4];
21  float pad_pitch = (b + B) / pads;
22  int npad = static_cast<int>(pads);
23  _top_pad = new TrapezoidalStripTopology(npad, pad_pitch, striplength, r0);
24  } else {
25  _top = nullptr;
26  _top_pad = nullptr;
27  }
28 }

References _p, _top, _top_pad, TtFullHadDaughter::B, b, GeomDetEnumerators::ME0, gen::npad, and DigiDM_cff::strips.

◆ ~ME0EtaPartitionSpecs()

ME0EtaPartitionSpecs::~ME0EtaPartitionSpecs ( )
override

Definition at line 30 of file ME0EtaPartitionSpecs.cc.

30  {
31  if (_top)
32  delete _top;
33  if (_top_pad)
34  delete _top_pad;
35 }

References _top, and _top_pad.

Member Function Documentation

◆ detName()

const std::string & ME0EtaPartitionSpecs::detName ( ) const

Definition at line 45 of file ME0EtaPartitionSpecs.cc.

45 { return _n; }

References _n.

◆ padTopology()

const Topology & ME0EtaPartitionSpecs::padTopology ( ) const

Definition at line 41 of file ME0EtaPartitionSpecs.cc.

41 { return *_top_pad; }

References _top_pad.

Referenced by ME0EtaPartition::padTopology().

◆ parameters()

const std::vector< float > & ME0EtaPartitionSpecs::parameters ( void  ) const

Definition at line 47 of file ME0EtaPartitionSpecs.cc.

47 { return _p; }

References _p.

Referenced by ME0PreRecoGaussianModel::correctSigmaU(), and ME0PreRecoGaussianModel::simulateNoise().

◆ specificPadTopology()

const StripTopology & ME0EtaPartitionSpecs::specificPadTopology ( ) const

Definition at line 43 of file ME0EtaPartitionSpecs.cc.

43 { return *_top_pad; }

References _top_pad.

Referenced by ME0EtaPartition::specificPadTopology().

◆ specificTopology()

const StripTopology & ME0EtaPartitionSpecs::specificTopology ( ) const

Definition at line 39 of file ME0EtaPartitionSpecs.cc.

39 { return *_top; }

References _top.

Referenced by ME0EtaPartition::specificTopology().

◆ topology()

const Topology & ME0EtaPartitionSpecs::topology ( ) const
overridevirtual

Implements GeomDetType.

Definition at line 37 of file ME0EtaPartitionSpecs.cc.

37 { return *_top; }

References _top.

Referenced by ME0EtaPartition::topology().

Member Data Documentation

◆ _n

std::string ME0EtaPartitionSpecs::_n
private

Definition at line 46 of file ME0EtaPartitionSpecs.h.

Referenced by detName().

◆ _p

std::vector<float> ME0EtaPartitionSpecs::_p
private

Definition at line 45 of file ME0EtaPartitionSpecs.h.

Referenced by ME0EtaPartitionSpecs(), and parameters().

◆ _top

StripTopology* ME0EtaPartitionSpecs::_top
private

topology of strips

Definition at line 40 of file ME0EtaPartitionSpecs.h.

Referenced by ME0EtaPartitionSpecs(), specificTopology(), topology(), and ~ME0EtaPartitionSpecs().

◆ _top_pad

StripTopology* ME0EtaPartitionSpecs::_top_pad
private

topology of trigger pads (pad = bundle of strips, basically, a "fat" strip)

Definition at line 43 of file ME0EtaPartitionSpecs.h.

Referenced by ME0EtaPartitionSpecs(), padTopology(), specificPadTopology(), and ~ME0EtaPartitionSpecs().

ME0EtaPartitionSpecs::_n
std::string _n
Definition: ME0EtaPartitionSpecs.h:46
h
GeomDetType::name
const std::string & name() const
Definition: GeomDetType.h:19
ME0EtaPartitionSpecs::_p
std::vector< float > _p
Definition: ME0EtaPartitionSpecs.h:45
TrapezoidalStripTopology
Definition: TrapezoidalStripTopology.h:21
b
double b
Definition: hdecay.h:118
ME0EtaPartitionSpecs::_top_pad
StripTopology * _top_pad
topology of trigger pads (pad = bundle of strips, basically, a "fat" strip)
Definition: ME0EtaPartitionSpecs.h:43
TtFullHadDaughter::B
static const std::string B
Definition: TtFullHadronicEvent.h:9
GeomDetType::GeomDetType
GeomDetType(const std::string &name, SubDetector subdet)
Definition: GeomDetType.cc:5
ME0EtaPartitionSpecs::_top
StripTopology * _top
topology of strips
Definition: ME0EtaPartitionSpecs.h:40
gen::npad
int npad
Definition: Cascade2Hadronizer.cc:73
GeomDetEnumerators::ME0
Definition: GeomDetEnumerators.h:22
DigiDM_cff.strips
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers....
Definition: DigiDM_cff.py:32