CMS 3D CMS Logo

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

#include <RPCRollSpecs.h>

Inheritance diagram for RPCRollSpecs:
GeomDetType

Public Types

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

Public Member Functions

const std::string & detName () const
 
 RPCRollSpecs (SubDetector rss, const std::string &name, const RPCSpecs &pars)
 
const StripTopologyspecificTopology () const
 
const Topologytopology () const override
 
 ~RPCRollSpecs () 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
 

Detailed Description

Storage of the parameters of the RPC Chamber using standard topologies

Author
M. Maggi - INFN Bari

Definition at line 18 of file RPCRollSpecs.h.

Member Typedef Documentation

◆ RPCSpecs

typedef std::vector<float> RPCRollSpecs::RPCSpecs

Definition at line 20 of file RPCRollSpecs.h.

Constructor & Destructor Documentation

◆ RPCRollSpecs()

RPCRollSpecs::RPCRollSpecs ( SubDetector  rss,
const std::string &  name,
const RPCSpecs pars 
)

Definition at line 7 of file RPCRollSpecs.cc.

References _p, _top, B, b, h, GeomDetEnumerators::RPCBarrel, GeomDetEnumerators::RPCEndcap, and DigiDM_cff::strips.

8  : GeomDetType(name, rss), _p(pars), _n(name) {
9  if (rss == RPCBarrel) {
10  int nstrip = static_cast<int>(_p[2]);
11  float pitch = _p[0] * 2 / _p[2];
12  float striplength = _p[1] * 2;
13  _top = new RectangularStripTopology(nstrip, pitch, striplength);
14  } else if (rss == RPCEndcap) {
15  float b = _p[0];
16  float B = _p[1];
17  float h = _p[2];
18  float r0 = h * (B + b) / (B - b);
19  float striplength = h * 2;
20  float strips = _p[3];
21  float pitch = (b + B) / strips;
22  int nstrip = static_cast<int>(strips);
23 
24  _top = new TrapezoidalStripTopology(nstrip, pitch, striplength, r0);
25  } else {
26  _top = nullptr;
27  }
28 }
std::string _n
Definition: RPCRollSpecs.h:35
Definition: APVGainStruct.h:7
StripTopology * _top
Definition: RPCRollSpecs.h:33
const std::string & name() const
Definition: GeomDetType.h:19
GeomDetType(const std::string &name, SubDetector subdet)
Definition: GeomDetType.cc:5
double b
Definition: hdecay.h:118
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers.hcal.doNoise = False simEcalUnsuppressedDigis.doNoise = False mix.digitizers.ecal.doNoise = False simEcalUnsuppressedDigis.doESNoise = False simSiPixelDigis.AddNoise = False mix.digitizers.pixel.AddNoise = False simSiStripDigis.Noise = False mix.digitizers.strip.AddNoise = False
Definition: DigiDM_cff.py:32
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
std::vector< float > _p
Definition: RPCRollSpecs.h:34

◆ ~RPCRollSpecs()

RPCRollSpecs::~RPCRollSpecs ( )
override

Definition at line 30 of file RPCRollSpecs.cc.

References _top.

30  {
31  if (_top)
32  delete _top;
33  _top = nullptr;
34 }
StripTopology * _top
Definition: RPCRollSpecs.h:33

Member Function Documentation

◆ detName()

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

Definition at line 40 of file RPCRollSpecs.cc.

References _n.

40 { return _n; }
std::string _n
Definition: RPCRollSpecs.h:35

◆ specificTopology()

const StripTopology & RPCRollSpecs::specificTopology ( ) const

Definition at line 38 of file RPCRollSpecs.cc.

References _top.

Referenced by RPCRoll::specificTopology().

38 { return *(_top); }
StripTopology * _top
Definition: RPCRollSpecs.h:33

◆ topology()

const Topology & RPCRollSpecs::topology ( ) const
overridevirtual

Member Data Documentation

◆ _n

std::string RPCRollSpecs::_n
private

Definition at line 35 of file RPCRollSpecs.h.

Referenced by detName().

◆ _p

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

Definition at line 34 of file RPCRollSpecs.h.

Referenced by RPCRollSpecs().

◆ _top

StripTopology* RPCRollSpecs::_top
private

Definition at line 33 of file RPCRollSpecs.h.

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