CMS 3D CMS Logo

Public Member Functions | Static Private Attributes

TOBDetId Class Reference

#include <TOBDetId.h>

Inheritance diagram for TOBDetId:
SiStripDetId DetId

List of all members.

Public Member Functions

bool isDoubleSide () const
bool isRPhi ()
bool isStereo ()
bool isZMinusSide () const
bool isZPlusSide () const
unsigned int layer () const
 layer id
unsigned int layerNumber () const
unsigned int module () const
 detector id
unsigned int moduleNumber () const
std::vector< unsigned int > rod () const
 rod id
unsigned int rodNumber () const
unsigned int side () const
 TOBDetId (uint32_t rawid)
 TOBDetId (const DetId &id)
 TOBDetId ()
 TOBDetId (uint32_t layer, uint32_t rod_fw_bw, uint32_t rod, uint32_t module, uint32_t ster)

Static Private Attributes

static const unsigned int layerMask_ = 0x7
 two bits would be enough, but we could use the number "0" as a wildcard
static const unsigned int layerStartBit_ = 14
 two bits would be enough, but we could use the number "0" as a wildcard
static const unsigned int moduleMask_ = 0x7
static const unsigned int moduleStartBit_ = 2
static const unsigned int rod_fw_bwMask_ = 0x3
static const unsigned int rod_fw_bwStartBit_ = 12
static const unsigned int rodMask_ = 0x7F
static const unsigned int rodStartBit_ = 5
static const unsigned int sterMask_ = 0x3
static const unsigned int sterStartBit_ = 0

Detailed Description

Definition at line 16 of file TOBDetId.h.


Constructor & Destructor Documentation

TOBDetId::TOBDetId ( ) [inline]

Constructor of a null id

Definition at line 110 of file TOBDetId.h.

                   : SiStripDetId() {
}
TOBDetId::TOBDetId ( uint32_t  rawid) [inline]

Constructor from a raw value

Definition at line 113 of file TOBDetId.h.

                                 : SiStripDetId(rawid) {
}
TOBDetId::TOBDetId ( const DetId id) [inline]

Construct from generic DetId

Definition at line 116 of file TOBDetId.h.

                                  : SiStripDetId(id.rawId()) {
}
TOBDetId::TOBDetId ( uint32_t  layer,
uint32_t  rod_fw_bw,
uint32_t  rod,
uint32_t  module,
uint32_t  ster 
) [inline]

Member Function Documentation

bool TOBDetId::isDoubleSide ( ) const [inline]

Returns true if the module is a double side = rphi + stereo

Definition at line 119 of file TOBDetId.h.

References SiStripDetId::glued(), and layer().

Referenced by SiPixelErrorEstimation::analyze(), AlignmentStats::endJob(), TrackerOfflineValidation::fillTree(), TrackerOfflineValidationSummary::fillTree(), isRPhi(), isStereo(), and TrackerDpgAnalysis::toStringName().

                                  {
  // Double Side: only layers 1 and 2
  return this->glued() == 0 && ( this->layer() == 1 || this->layer() == 2 );
}
bool TOBDetId::isRPhi ( ) [inline]

Returns true if the module is rphi

Definition at line 85 of file TOBDetId.h.

References isDoubleSide(), and SiStripDetId::stereo().

Referenced by SiPixelErrorEstimation::analyze(), SiStripBadModuleGenerator::isTOBDetector(), and TrackerDpgAnalysis::toStringName().

  { return (stereo() == 0 && !isDoubleSide());}
bool TOBDetId::isStereo ( ) [inline]
bool TOBDetId::isZMinusSide ( ) const [inline]

Returns true if the module is in TOB- (z<0 side)

Definition at line 69 of file TOBDetId.h.

References side().

Referenced by SiPixelErrorEstimation::analyze(), SiStripFolderOrganizer::getFolderName(), TkLayerMap::getXY_TOB(), isZPlusSide(), and ShallowClustersProducer::moduleVars::moduleVars().

  { return (side() == 1);}
bool TOBDetId::isZPlusSide ( ) const [inline]

Returns true if the module is in TOB+ (z>0 side)

Definition at line 65 of file TOBDetId.h.

References isZMinusSide().

Referenced by SiPixelErrorEstimation::analyze(), SiStripBadModuleGenerator::isTOBDetector(), and TrackerDpgAnalysis::toStringName().

  { return (!isZMinusSide());}
unsigned int TOBDetId::layer ( ) const [inline]

layer id

Definition at line 39 of file TOBDetId.h.

References DetId::id_, layerMask_, and layerStartBit_.

Referenced by SiStripDetSummary::add(), SiStripHitEffFromCalibTree::algoAnalyze(), SiStripCalibLorentzAngle::algoBeginJob(), SiStripElectronAnalyzer::analyze(), SiStripQualityStatistics::analyze(), SiStripDigiValid::analyze(), SiPixelErrorEstimation::analyze(), SiStripRecHitsValid::analyze(), SiStripLAProfileBooker::analyze(), SiStripTrackingRecHitsValid::analyze(), sistrip::MeasureLA::calibration_key(), HitEff::checkLayer(), SiStripElectronAlgo::coarseHitSelection(), SiStripLorentzAngleGenerator::createObject(), reco::DeDxHit::DeDxHit(), RingMaker::determineExtensions(), SiStripBadComponentsDQMServiceReader::detIdToString(), RingMaker::dumpDetIds(), reco::HitPattern::encode(), SiStripBadAPVAlgorithmFromClusterOccupancy::extractBadAPVs(), SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy::extractBadAPVSandStrips(), SiStripHotStripAlgorithmFromClusterOccupancy::extractBadStrips(), SiStripQualityDQM::fillGrandSummaryMEs(), TrackerGeometryCompare::fillIdentifiers(), RingMaker::fillTOBGeometryArray(), TrackerOfflineValidation::fillTree(), TrackerOfflineValidationSummary::fillTree(), GlobalRecHitsProducer::fillTrk(), GlobalRecHitsAnalyzer::fillTrk(), GlobalDigisAnalyzer::fillTrk(), GlobalDigisProducer::fillTrk(), cms::ClusterMTCCFilter::filter(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), SiStripCablingDQM::getActiveDetIds(), getDetLayer(), SiStripPlotGain::getHistos(), SiStripCorrelateBadStripAndNoise::getHistos(), SiStripCorrelateNoise::getHistos(), TrajectoryCleanerMerger::getLayer(), SiStripLAProfileBooker::getlayer(), SiStripFolderOrganizer::getLayerFolderName(), SiStripBaseCondObjDQM::getLayerNameAndId(), SiStripCalibLorentzAngle::getNewObject(), SiStripGainCosmicCalculator::getNewObject(), GlobalMuonRefitter::getRidOfSelectStationHits(), SiStripBaseCondObjDQM::getStringNameAndId(), SiStripFolderOrganizer::GetSubDetAndLayer(), SiStripHistoId::getSubdetid(), SiStripSubStructure::getTOBDetectors(), TrackTransformerForGlobalCosmicMuons::getTransientRecHits(), GeometricSearchTracker::idToLayer(), fireworks::info(), DetIdInfo::info(), CheckHitPattern::interpretDetId(), PFCheckHitPattern::interpretDetId(), isDoubleSide(), TrajectoryAtInvalidHit::isDoubleSided(), HitEff::isDoubleSided(), RoadSearchDetIdHelper::IsMatched(), RoadSearchDetIdHelper::IsSingleRPhi(), ClusterSummary::ModuleSelection::IsStripSelected(), MuonReSeeder::layer(), reco::modules::TrackerTrackHitFilter::Rule::layer(), TrackMerger::layer(), MuonAssociatorByHits::LayerFromDetid(), TrackingTruthProducer::LayerFromDetid(), TrackAssociatorByHits::LayerFromDetid(), SiStripRegionCabling::layerFromDetId(), TkAlCaOverlapTagger::layerFromId(), AlignmentPrescaler::layerFromId(), reco::modules::TrackerTrackHitFilter::layerFromId(), LA_Filler_Fitter::layerLabel(), layerNumber(), align::tob::layerNumber(), TrajectoryManager::makeSinglePSimHit(), ShallowClustersProducer::moduleVars::moduleVars(), DetIdTOBSameLayerComparator::operator()(), AlignmentParameterSelector::outsideDetIdRanges(), CtfSpecialSeedGenerator::preliminaryCheck(), RoadSearchDetIdHelper::Print(), SiStripQuality::printDetInfo(), SiStripBadAPVandHotStripAlgorithmFromClusterOccupancy::setBasicTreeParameters(), SiStripFolderOrganizer::setLayerFolder(), ResidualRefitting::StoreTrackerRecHits(), SiStripNoiseNormalizedWithApvGainBuilder::subDetAndLayer(), SiStripNoisesGenerator::subDetAndLayer(), SiStripApvGainBuilderFromTag::subDetAndLayer(), trackerHierarchy(), TrackTransformerForGlobalCosmicMuons::TrackerKeep(), LaserDQM::trackerStatistics(), and TrackerAlignableId::typeAndLayerFromDetId().

                            {
    return int((id_>>layerStartBit_) & layerMask_);
  }
unsigned int TOBDetId::layerNumber ( ) const [inline]
unsigned int TOBDetId::module ( ) const [inline]
unsigned int TOBDetId::moduleNumber ( ) const [inline]
std::vector<unsigned int> TOBDetId::rod ( ) const [inline]
unsigned int TOBDetId::rodNumber ( ) const [inline]
unsigned int TOBDetId::side ( ) const [inline]

Member Data Documentation

const unsigned int TOBDetId::layerMask_ = 0x7 [static, private]

two bits would be enough, but we could use the number "0" as a wildcard

Reimplemented from SiStripDetId.

Definition at line 101 of file TOBDetId.h.

Referenced by layer(), and TOBDetId().

const unsigned int TOBDetId::layerStartBit_ = 14 [static, private]

two bits would be enough, but we could use the number "0" as a wildcard

Reimplemented from SiStripDetId.

Definition at line 94 of file TOBDetId.h.

Referenced by layer(), and TOBDetId().

const unsigned int TOBDetId::moduleMask_ = 0x7 [static, private]

Definition at line 104 of file TOBDetId.h.

Referenced by module(), and TOBDetId().

const unsigned int TOBDetId::moduleStartBit_ = 2 [static, private]

Definition at line 97 of file TOBDetId.h.

Referenced by module(), and TOBDetId().

const unsigned int TOBDetId::rod_fw_bwMask_ = 0x3 [static, private]

Definition at line 102 of file TOBDetId.h.

Referenced by side(), and TOBDetId().

const unsigned int TOBDetId::rod_fw_bwStartBit_ = 12 [static, private]

Definition at line 95 of file TOBDetId.h.

Referenced by side(), and TOBDetId().

const unsigned int TOBDetId::rodMask_ = 0x7F [static, private]

Definition at line 103 of file TOBDetId.h.

Referenced by rodNumber(), and TOBDetId().

const unsigned int TOBDetId::rodStartBit_ = 5 [static, private]

Definition at line 96 of file TOBDetId.h.

Referenced by rodNumber(), and TOBDetId().

const unsigned int TOBDetId::sterMask_ = 0x3 [static, private]

Reimplemented from SiStripDetId.

Definition at line 105 of file TOBDetId.h.

Referenced by TOBDetId().

const unsigned int TOBDetId::sterStartBit_ = 0 [static, private]

Reimplemented from SiStripDetId.

Definition at line 98 of file TOBDetId.h.

Referenced by TOBDetId().