CMS 3D CMS Logo

Public Member Functions | Private Attributes

GEMEtaPartition Class Reference

#include <GEMEtaPartition.h>

Inheritance diagram for GEMEtaPartition:
GeomDetUnit GeomDet

List of all members.

Public Member Functions

LocalPoint centreOfPad (int pad) const
LocalPoint centreOfPad (float pad) const
LocalPoint centreOfStrip (int strip) const
LocalPoint centreOfStrip (float strip) const
int firstStripInPad (int pad) const
 returns first strip (INT number [1,nstrip]) for pad (an integer [1,npads])
 GEMEtaPartition (GEMDetId id, BoundPlane::BoundPlanePointer bp, GEMEtaPartitionSpecs *rrs)
GEMDetId id () const
int lastStripInPad (int pad) const
 returns last strip (INT number [1,nstrip]) for pad (an integer [1,npads])
LocalError localError (float strip) const
float localPadPitch (const LocalPoint &lp) const
 pad pitch at a particular point
float localPitch (const LocalPoint &lp) const
int npads () const
 number of GEM-CSC trigger readout pads in partition
int nstrips () const
 Return the chamber this roll belongs to.
float pad (const LocalPoint &lp) const
 returns FRACTIONAL pad number [0.,npads] for a point
float padOfStrip (int strip) const
 returns FRACTIONAL pad number [0.,npads] for an integer strip [1,nstrip]
float padPitch () const
 pad pitch in a center
const TopologypadTopology () const
float pitch () const
const StripTopologyspecificPadTopology () const
const StripTopologyspecificTopology () const
const GEMEtaPartitionSpecsspecs () const
float strip (const LocalPoint &lp) const
const Topologytopology () const
const GeomDetTypetype () const
 ~GEMEtaPartition ()

Private Attributes

GEMDetId id_
GEMEtaPartitionSpecsspecs_

Detailed Description

Definition at line 13 of file GEMEtaPartition.h.


Constructor & Destructor Documentation

GEMEtaPartition::GEMEtaPartition ( GEMDetId  id,
BoundPlane::BoundPlanePointer  bp,
GEMEtaPartitionSpecs rrs 
)

Definition at line 6 of file GEMEtaPartition.cc.

References GeomDet::setDetId().

                                                                                                       :
  GeomDetUnit(bp), id_(id),specs_(rrs)
{
  setDetId(id);
}
GEMEtaPartition::~GEMEtaPartition ( )

Definition at line 12 of file GEMEtaPartition.cc.

References specs_.

{
  delete specs_; //Assume the roll owns it specs (specs are not shared)
}

Member Function Documentation

LocalPoint GEMEtaPartition::centreOfPad ( int  pad) const

returns center of pad position for INTEGER pad number that has a value range of [1, npads]

Definition at line 98 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), AlCaHLTBitMon_ParallelJobs::p, pad(), and specificPadTopology().

{
  float p = static_cast<float>(pad) - 0.5;
  return specificPadTopology().localPosition(p);
}
LocalPoint GEMEtaPartition::centreOfPad ( float  pad) const

returns center of pad position for FRACTIONAL pad number that has a value range of [0., npads]

Definition at line 105 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), and specificPadTopology().

LocalPoint GEMEtaPartition::centreOfStrip ( int  strip) const

returns center of strip position for INTEGER strip number that has a value range of [1, nstrip]

Definition at line 54 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), alignCSCRings::s, specificTopology(), and strip().

Referenced by GEMRecHitStandardAlgo::compute(), and padOfStrip().

{
  float s = static_cast<float>(strip) - 0.5;
  return this->specificTopology().localPosition(s);
}
LocalPoint GEMEtaPartition::centreOfStrip ( float  strip) const

returns center of strip position for FRACTIONAL strip number that has a value range of [0., nstrip]

Definition at line 61 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), and specificTopology().

{
  return this->specificTopology().localPosition(strip);
}
int GEMEtaPartition::firstStripInPad ( int  pad) const

returns first strip (INT number [1,nstrip]) for pad (an integer [1,npads])

Definition at line 137 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), AlCaHLTBitMon_ParallelJobs::p, pad(), specificPadTopology(), and strip().

{
  float p = static_cast<float>(pad) - 0.9999;
  LocalPoint lp = specificPadTopology().localPosition(p);
  return static_cast<int>(strip(lp)) + 1;
}
GEMDetId GEMEtaPartition::id ( void  ) const [inline]
int GEMEtaPartition::lastStripInPad ( int  pad) const

returns last strip (INT number [1,nstrip]) for pad (an integer [1,npads])

Definition at line 145 of file GEMEtaPartition.cc.

References StripTopology::localPosition(), AlCaHLTBitMon_ParallelJobs::p, pad(), specificPadTopology(), and strip().

{
  float p = static_cast<float>(pad) - 0.0001;
  LocalPoint lp = specificPadTopology().localPosition(p);
  return static_cast<int>(strip(lp)) + 1;
}
LocalError GEMEtaPartition::localError ( float  strip) const

Definition at line 67 of file GEMEtaPartition.cc.

References StripTopology::localError(), specificTopology(), and mathSSE::sqrt().

Referenced by GEMRecHitStandardAlgo::compute().

{
  return this->specificTopology().localError(strip, 1./sqrt(12.));
}
float GEMEtaPartition::localPadPitch ( const LocalPoint lp) const

pad pitch at a particular point

Definition at line 117 of file GEMEtaPartition.cc.

References StripTopology::localPitch(), and specificPadTopology().

{ 
  return specificPadTopology().localPitch(lp);
}
float GEMEtaPartition::localPitch ( const LocalPoint lp) const

Definition at line 79 of file GEMEtaPartition.cc.

References StripTopology::localPitch(), and specificTopology().

{ 
  return this->specificTopology().localPitch(lp);
}
int GEMEtaPartition::npads ( ) const

number of GEM-CSC trigger readout pads in partition

Definition at line 92 of file GEMEtaPartition.cc.

References StripTopology::nstrips(), and specificPadTopology().

{
  return specificPadTopology().nstrips();
}
int GEMEtaPartition::nstrips ( ) const

Return the chamber this roll belongs to.

number of readout strips in partition

Definition at line 48 of file GEMEtaPartition.cc.

References StripTopology::nstrips(), and specificTopology().

Referenced by GEMSimSetUp::setup(), and GEMSimAverage::simulateNoise().

{
  return this->specificTopology().nstrips();
}
float GEMEtaPartition::pad ( const LocalPoint lp) const

returns FRACTIONAL pad number [0.,npads] for a point

Definition at line 111 of file GEMEtaPartition.cc.

References specificPadTopology(), and StripTopology::strip().

Referenced by centreOfPad(), firstStripInPad(), lastStripInPad(), and padOfStrip().

{ 
  return specificPadTopology().strip(lp);
}
float GEMEtaPartition::padOfStrip ( int  strip) const

returns FRACTIONAL pad number [0.,npads] for an integer strip [1,nstrip]

Definition at line 130 of file GEMEtaPartition.cc.

References centreOfStrip(), and pad().

{
  LocalPoint c_o_s = centreOfStrip(strip);
  return pad(c_o_s);
}
float GEMEtaPartition::padPitch ( ) const

pad pitch in a center

Definition at line 123 of file GEMEtaPartition.cc.

References StripTopology::pitch(), and specificPadTopology().

{ 
  return specificPadTopology().pitch();
}
const Topology & GEMEtaPartition::padTopology ( ) const

Definition at line 30 of file GEMEtaPartition.cc.

References GEMEtaPartitionSpecs::padTopology(), and specs_.

{
  return specs_->padTopology();
}
float GEMEtaPartition::pitch ( ) const

Definition at line 85 of file GEMEtaPartition.cc.

References StripTopology::pitch(), and specificTopology().

{ 
  return this->specificTopology().pitch();
}
const StripTopology & GEMEtaPartition::specificPadTopology ( ) const
const StripTopology & GEMEtaPartition::specificTopology ( ) const
const GEMEtaPartitionSpecs* GEMEtaPartition::specs ( ) const [inline]

Definition at line 20 of file GEMEtaPartition.h.

References specs_.

Referenced by GEMSimAverage::simulate(), and GEMSimTriv::simulate().

{ return specs_; }
float GEMEtaPartition::strip ( const LocalPoint lp) const

returns fractional strip number [0..nstrips] for a LocalPoint E.g., if local point hit strip #2, the fractional strip number would be somewhere in the (1., 2] interval

Definition at line 73 of file GEMEtaPartition.cc.

References specificTopology(), and StripTopology::strip().

Referenced by centreOfStrip(), firstStripInPad(), and lastStripInPad().

{ 
  return this->specificTopology().strip(lp);
}
const Topology & GEMEtaPartition::topology ( ) const [virtual]

Implements GeomDetUnit.

Definition at line 18 of file GEMEtaPartition.cc.

References specs_, and GEMEtaPartitionSpecs::topology().

Referenced by GEMSimAverage::simulateNoise().

{
  return specs_->topology();
}
const GeomDetType & GEMEtaPartition::type ( ) const [virtual]

Implements GeomDetUnit.

Definition at line 42 of file GEMEtaPartition.cc.

References specs_.

Referenced by GEMGeometry::add().

{
  return (*specs_);
}

Member Data Documentation

Definition at line 92 of file GEMEtaPartition.h.

Referenced by id().