CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes | Friends

TrackerGeometry Class Reference

#include <TrackerGeometry.h>

Inheritance diagram for TrackerGeometry:
TrackingGeometry

List of all members.

Public Types

typedef
GeomDetEnumerators::SubDetector 
SubDetector

Public Member Functions

void addDet (GeomDet *p)
void addDetId (DetId p)
void addDetUnit (GeomDetUnit *p)
void addDetUnitId (DetId p)
void addType (GeomDetType *p)
virtual const DetIdContainerdetIds () const
 Returm a vector of all GeomDet DetIds (including those of GeomDetUnits)
virtual const DetContainerdets () const
 Returm a vector of all GeomDet (including all GeomDetUnits)
const DetContainerdetsPXB () const
const DetContainerdetsPXF () const
const DetContainerdetsTEC () const
const DetContainerdetsTIB () const
const DetContainerdetsTID () const
const DetContainerdetsTOB () const
virtual const DetTypeContainerdetTypes () const
 Return a vector of all det types.
virtual const DetIdContainerdetUnitIds () const
 Returm a vector of all GeomDetUnit DetIds.
virtual const DetUnitContainerdetUnits () const
 Returm a vector of all GeomDetUnit.
unsigned int endsetDU (SubDetector sid) const
virtual const GeomDetidToDet (DetId) const
virtual const GeomDetUnitidToDetUnit (DetId) const
 Return the pointer to the GeomDetUnit corresponding to a given DetId.
unsigned int offsetDU (SubDetector sid) const
void setEndsetDU (SubDetector sid)
void setOffsetDU (SubDetector sid)
GeometricDet const * trackerDet () const
 TrackerGeometry (GeometricDet const *gd=0)
virtual ~TrackerGeometry ()

Private Attributes

DetIdContainer theDetIds
DetContainer theDets
DetTypeContainer theDetTypes
DetIdContainer theDetUnitIds
DetUnitContainer theDetUnits
unsigned int theEndsetDU [6]
mapIdToDet theMap
mapIdToDetUnit theMapUnit
unsigned int theOffsetDU [6]
DetContainer thePXBDets
DetContainer thePXFDets
DetContainer theTECDets
DetContainer theTIBDets
DetContainer theTIDDets
DetContainer theTOBDets
GeometricDet const * theTrackerDet

Friends

class GeometryAligner
 Aligner has access to map.

Detailed Description

A specific Tracker Builder which builds a Tracker from a list of DetUnits. Pattern recognition is used to discover layers, rings etc.

Definition at line 27 of file TrackerGeometry.h.


Member Typedef Documentation

Definition at line 29 of file TrackerGeometry.h.


Constructor & Destructor Documentation

TrackerGeometry::TrackerGeometry ( GeometricDet const *  gd = 0) [explicit]

Definition at line 16 of file TrackerGeometry.cc.

:  theTrackerDet(gd){}
TrackerGeometry::~TrackerGeometry ( ) [virtual]

Definition at line 18 of file TrackerGeometry.cc.

References theDets, and theDetTypes.

                                  {
    for (DetContainer::iterator     it = theDets.begin(),     ed = theDets.end();     it != ed; ++it) delete *it;
    for (DetTypeContainer::iterator it = theDetTypes.begin(), ed = theDetTypes.end(); it != ed; ++it) delete *it;
}

Member Function Documentation

void TrackerGeometry::addDet ( GeomDet p)

Definition at line 43 of file TrackerGeometry.cc.

References GeomDet::geographicalId(), AlCaHLTBitMon_ParallelJobs::p, PixelSubdetector::PixelBarrel, PixelSubdetector::PixelEndcap, DetId::rawId(), StripSubdetector::TEC, theDets, theMap, thePXBDets, thePXFDets, theTECDets, theTIBDets, theTIDDets, theTOBDets, StripSubdetector::TIB, StripSubdetector::TID, and StripSubdetector::TOB.

Referenced by TrackerGeomBuilderFromGeometricDet::buildGeomDet().

                                       {
  theDets.push_back(p);  // add to vector
  theMap.insert(std::make_pair(p->geographicalId().rawId(),p));
  DetId id(p->geographicalId());
  switch(id.subdetId()){
  case PixelSubdetector::PixelBarrel:
    thePXBDets.push_back(p);
    break;
  case PixelSubdetector::PixelEndcap:
    thePXFDets.push_back(p);
    break;
  case StripSubdetector::TIB:
    theTIBDets.push_back(p);
    break;
  case StripSubdetector::TID:
    theTIDDets.push_back(p);
    break;
  case StripSubdetector::TOB:
    theTOBDets.push_back(p);
    break;
  case StripSubdetector::TEC:
    theTECDets.push_back(p);
    break;
  default:
    edm::LogError("TrackerGeometry")<<"ERROR - I was expecting a Tracker Subdetector, I got a "<<id.subdetId();
  }


}
void TrackerGeometry::addDetId ( DetId  p)

Definition at line 73 of file TrackerGeometry.cc.

References theDetIds.

Referenced by TrackerGeomBuilderFromGeometricDet::buildGeomDet().

                                     {
  theDetIds.push_back(p);
}
void TrackerGeometry::addDetUnit ( GeomDetUnit p)
void TrackerGeometry::addDetUnitId ( DetId  p)
void TrackerGeometry::addType ( GeomDetType p)

Definition at line 28 of file TrackerGeometry.cc.

References theDetTypes.

Referenced by TrackerGeomBuilderFromGeometricDet::buildPixel(), and TrackerGeomBuilderFromGeometricDet::buildSilicon().

                                            {
  theDetTypes.push_back(p);  // add to vector
}
const TrackerGeometry::DetIdContainer & TrackerGeometry::detIds ( ) const [virtual]

Returm a vector of all GeomDet DetIds (including those of GeomDetUnits)

Implements TrackingGeometry.

Definition at line 161 of file TrackerGeometry.cc.

References theDetIds.

Referenced by TrackerOfflineValidationSummary::analyze(), and TrackerOfflineValidation::checkBookHists().

{
  return theDetIds;
}
const TrackerGeometry::DetContainer & TrackerGeometry::dets ( ) const [virtual]

Returm a vector of all GeomDet (including all GeomDetUnits)

Implements TrackingGeometry.

Definition at line 84 of file TrackerGeometry.cc.

References theDets.

{
  return theDets;
}
const TrackerGeometry::DetContainer & TrackerGeometry::detsPXB ( ) const
const TrackerGeometry::DetContainer & TrackerGeometry::detsPXF ( ) const
const TrackerGeometry::DetContainer & TrackerGeometry::detsTEC ( ) const
const TrackerGeometry::DetContainer & TrackerGeometry::detsTIB ( ) const
const TrackerGeometry::DetContainer & TrackerGeometry::detsTID ( ) const
const TrackerGeometry::DetContainer & TrackerGeometry::detsTOB ( ) const
const TrackerGeometry::DetTypeContainer & TrackerGeometry::detTypes ( ) const [virtual]

Return a vector of all det types.

Implements TrackingGeometry.

Definition at line 148 of file TrackerGeometry.cc.

References theDetTypes.

{
  return theDetTypes;
}
const TrackerGeometry::DetIdContainer & TrackerGeometry::detUnitIds ( ) const [virtual]
const TrackerGeometry::DetUnitContainer & TrackerGeometry::detUnits ( ) const [virtual]
unsigned int TrackerGeometry::endsetDU ( SubDetector  sid) const [inline]

Definition at line 51 of file TrackerGeometry.h.

References evf::utils::sid, and theEndsetDU.

{ return theEndsetDU[sid];}
const GeomDet * TrackerGeometry::idToDet ( DetId  ) const [virtual]

Return the pointer to the GeomDet corresponding to a given DetId (valid also for GeomDetUnits)

Implements TrackingGeometry.

Definition at line 137 of file TrackerGeometry.cc.

References relativeConstraints::geom, AlCaHLTBitMon_ParallelJobs::p, DetId::rawId(), and theMap.

Referenced by FWRecoGeometryESProducer::addTECGeometry(), FWTGeoRecoGeometryESProducer::addTECGeometry(), FWRecoGeometryESProducer::addTIBGeometry(), FWTGeoRecoGeometryESProducer::addTIBGeometry(), FWTGeoRecoGeometryESProducer::addTIDGeometry(), FWRecoGeometryESProducer::addTIDGeometry(), FWTGeoRecoGeometryESProducer::addTOBGeometry(), FWRecoGeometryESProducer::addTOBGeometry(), SiPixelHitEfficiencySource::analyze(), SiPixelTrackResidualSource::analyze(), SiPixelMuonHLT::analyze(), SiPixelRecHitsValid::analyze(), SiPixelTrackingRecHitsValid::analyze(), SiStripMonitorMuonHLT::analyze(), SiPixelLorentzAngle::analyze(), SiStripRecHitsValid::analyze(), SiStripLAProfileBooker::analyze(), SiStripTrackingRecHitsValid::analyze(), SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy::AnalyzeOccupancy(), SiStripMonitorMuonHLT::analyzeOnTrackClusters(), SiStripLAProfileBooker::beginRun(), SiPixelErrorsDigisToCalibDigis::bookDQMHistoPlaquetteSummary2D(), SiPixelOfflineCalibAnalysisBase::bookDQMHistoPlaquetteSummary2D(), PixelRodBuilder::build(), FWPFPatJetLegoProxyBuilder< reco::PFJet >::build(), TIDRingBuilder::build(), TECWedgeBuilder::build(), TOBRodBuilder::build(), PixelBladeBuilder::build(), SeedFromGenericPairOrTriplet::buildSeed(), SiStripFineDelayHit::closestCluster(), SeedFromNuclearInteraction::construct(), LaserAlignment::endRunProduce(), SiStripBadAPVAlgorithmFromClusterOccupancy::extractBadAPVs(), SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips(), SiPixelClusterModule::fill(), TkAlCaRecoMonitor::fillHitmaps(), QcdLowPtDQM::fillPixels(), TrackerOfflineValidation::fillTree(), TrackerOfflineValidationSummary::fillTree(), GlobalRecHitsProducer::fillTrk(), GlobalRecHitsAnalyzer::fillTrk(), reco::CentralityProducer::filter(), SiStripElectronAlgo::findElectron(), SiStripFineDelayTLA::findtrackangle(), SiStripMonitorMuonHLT::GeometryFromTrackGeom(), SiPixelQuality::getBadRocPositions(), NuclearTester::HitPositions(), HLTPixelClusterShapeFilter::hltFilter(), TrackerRecHit::init(), SiTrackerGaussianSmearingRecHitConverter::matchHits(), SiStripMonitorMuonHLT::Normalizer(), CompareDetY_plus::operator()(), CompareHitY_plus::operator()(), CompareHitY::operator()(), TrackMerger::MomentumSort::operator()(), CompareDetY_minus::operator()(), SeedFromNuclearInteraction::outerHitPosition(), HIPixelClusterVtxProducer::produce(), TrackCandidateProducer::produce(), PixelClusterSelectorTopBottom::produce(), TrajectorySeedProducer::produce(), ConvBremSeedProducer::produce(), StripClusterSelectorTopBottom::produce(), SiStripElectronAlgo::projectPhiBand(), TrackInfoProducerAlgorithm::run(), SeedFromGenericPairOrTriplet::seedFromPair(), SeedFromGenericPairOrTriplet::seedFromTriplet(), SeedFromNuclearInteraction::setMeasurements(), SiTrackerGaussianSmearingRecHitConverter::smearHits(), LaserAlignment::testRoutine(), FastTSGFromPropagation::trackerSeeds(), LaserDQM::trackerStatistics(), and TrajectoryAtInvalidHit::TrajectoryAtInvalidHit().

{
  mapIdToDet::const_iterator p=theMap.find(s.rawId());
  if (p != theMap.end())
    return (p)->second;
  edm::LogError("TrackerGeometry")<<"Invalid DetID: no GeomDet associated";
  GeomDet* geom = 0;
  return geom;
}
const GeomDetUnit * TrackerGeometry::idToDetUnit ( DetId  ) const [virtual]
unsigned int TrackerGeometry::offsetDU ( SubDetector  sid) const [inline]

Definition at line 50 of file TrackerGeometry.h.

References evf::utils::sid, and theOffsetDU.

Referenced by StripCPE::fillParams().

{ return theOffsetDU[sid];}
void TrackerGeometry::setEndsetDU ( SubDetector  sid) [inline]
void TrackerGeometry::setOffsetDU ( SubDetector  sid) [inline]
GeometricDet const * TrackerGeometry::trackerDet ( ) const

Definition at line 23 of file TrackerGeometry.cc.

References theTrackerDet.

                                                       {
  return  theTrackerDet;
}

Friends And Related Function Documentation

friend class GeometryAligner [friend]

Aligner has access to map.

Definition at line 70 of file TrackerGeometry.h.


Member Data Documentation

Definition at line 78 of file TrackerGeometry.h.

Referenced by addDetId(), and detIds().

Definition at line 76 of file TrackerGeometry.h.

Referenced by addDet(), dets(), and ~TrackerGeometry().

Definition at line 72 of file TrackerGeometry.h.

Referenced by addType(), detTypes(), and ~TrackerGeometry().

Definition at line 77 of file TrackerGeometry.h.

Referenced by addDetUnitId(), and detUnitIds().

Definition at line 73 of file TrackerGeometry.h.

Referenced by addDetUnit(), and detUnits().

unsigned int TrackerGeometry::theEndsetDU[6] [private]

Definition at line 75 of file TrackerGeometry.h.

Referenced by endsetDU(), and setEndsetDU().

Definition at line 80 of file TrackerGeometry.h.

Referenced by addDet(), and idToDet().

Definition at line 79 of file TrackerGeometry.h.

Referenced by addDetUnit(), and idToDetUnit().

unsigned int TrackerGeometry::theOffsetDU[6] [private]

Definition at line 74 of file TrackerGeometry.h.

Referenced by offsetDU(), and setOffsetDU().

Definition at line 82 of file TrackerGeometry.h.

Referenced by addDet(), and detsPXB().

Definition at line 83 of file TrackerGeometry.h.

Referenced by addDet(), and detsPXF().

Definition at line 87 of file TrackerGeometry.h.

Referenced by addDet(), and detsTEC().

Definition at line 84 of file TrackerGeometry.h.

Referenced by addDet(), and detsTIB().

Definition at line 85 of file TrackerGeometry.h.

Referenced by addDet(), and detsTID().

Definition at line 86 of file TrackerGeometry.h.

Referenced by addDet(), and detsTOB().

Definition at line 67 of file TrackerGeometry.h.

Referenced by trackerDet().