#include <PSimHit.h>
Public Member Functions | |
unsigned int | detUnitId () const |
float | energyLoss () const |
The energy deposit in the PSimHit, in ???. More... | |
Local3DPoint | entryPoint () const |
Entry point in the local Det frame. More... | |
EncodedEventId | eventId () const |
Local3DPoint | exitPoint () const |
Exit point in the local Det frame. More... | |
LocalVector | localDirection () const |
Obsolete. Same as momentumAtEntry().unit(), for backward compatibility. More... | |
Local3DPoint | localPosition () const |
LocalVector | momentumAtEntry () const |
The momentum of the track that produced the hit, at entry point. More... | |
float | pabs () const |
fast and more accurate access to momentumAtEntry().mag() More... | |
int | particleType () const |
Geom::Phi< float > | phiAtEntry () const |
fast and more accurate access to momentumAtEntry().phi() More... | |
unsigned short | processType () const |
PSimHit () | |
PSimHit (const Local3DPoint &entry, const Local3DPoint &exit, float pabs, float tof, float eloss, int particleType, unsigned int detId, unsigned int trackId, float theta, float phi, unsigned short processType=0) | |
void | setEventId (EncodedEventId e) |
void | setTof (float tof) |
Geom::Theta< float > | thetaAtEntry () const |
fast and more accurate access to momentumAtEntry().theta() More... | |
float | timeOfFlight () const |
float | tof () const |
deprecated name for timeOfFlight() More... | |
unsigned int | trackId () const |
Protected Attributes | |
unsigned int | theDetUnitId |
float | theEnergyLoss |
Local3DPoint | theEntryPoint |
EncodedEventId | theEventId |
float | thePabs |
int | theParticleType |
float | thePhiAtEntry |
unsigned short | theProcessType |
Local3DVector | theSegment |
float | theThetaAtEntry |
float | theTof |
unsigned int | theTrackId |
Friends | |
class | TrackingSlaveSD |
Persistent-capable SimHit. Suitable for tracking detectors.
|
inline |
Definition at line 20 of file PSimHit.h.
|
inline |
The DetUnit identifier, to be interpreted in the context of the detector system that produced the hit. E.g. in the Tracker this is index used with DetUnitNumbering<TrackerSimHitTag>. Currently the context is not deducible from the PSimHit and must be known when the PSimHit is created/accessed.
Definition at line 93 of file PSimHit.h.
References theDetUnitId.
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), CkfDebugger::analyseCompatibleMeasurements(), CkfDebugger::analyseRecHitExistance(), CSCSegmentValidation::analyze(), FWTrackingParticleProxyBuilderFullFramework::build(), FWPSimHitProxyBuilder::buildViewType(), TrackingParticleNumberOfLayers::calculate(), MuonIdTruthInfo::checkSimHitForBestMatch(), MuonTrackResidualAnalyzer::computeResolution(), Bcm1fSD::createHit(), PltSD::createHit(), TkAccumulatingSensitiveDetector::createHit(), ChargeDividerFP420::DeconvolutionShape(), CkfDebugger::det(), CkfDebugger::SimHit::detUnitId(), SiPixelDigitizerAlgorithm::drift(), DTHitQualityUtils::findMuSimSegmentDirAndPos(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), SubsystemNeutronReader::generateChamberNoise(), HitInfo::getInfo(), GEMSimpleModel::getSimHitBx(), RPCSynchronizer::getSimHitBx(), CkfDebugger::hasDelta(), CkfDebugger::nextCorrectHits(), MuonTrackResidualAnalyzer::RadiusComparatorInOut::operator()(), operator<<(), ChargeDividerFP420::PeakShape(), CkfDebugger::position(), ShallowSimhitClustersProducer::produce(), cms::DigitizerFP420::produce(), FP420DigiMain::run(), MuonSensitiveDetector::saveHit(), PltSD::sendHit(), Bcm1fSD::sendHit(), TkAccumulatingSensitiveDetector::sendHit(), DTHitAssociator::SimHitOK(), FormatBarrelHits::sortId(), FormatEndcapHits::sortId(), FormatRpcHits::sortId(), FormatGemHits::sortId(), FormatMe0Hits::sortId(), Bcm1fSD::updateHit(), PltSD::updateHit(), TkAccumulatingSensitiveDetector::updateHit(), AsciiNeutronWriter::writeCluster(), and SubsystemNeutronWriter::writeHits().
|
inline |
The energy deposit in the PSimHit, in ???.
Definition at line 75 of file PSimHit.h.
References theEnergyLoss.
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), Bcm1fSD::createHit(), PltSD::createHit(), TkAccumulatingSensitiveDetector::createHit(), ChargeDividerFP420::DeconvolutionShape(), SiLinearChargeDivider::DeconvolutionShape(), ChargeDividerFP420::divide(), SiLinearChargeDivider::divide(), DTDigitizer::dumpHit(), CkfDebugger::SimHit::energyLoss(), SubsystemNeutronReader::generateChamberNoise(), ChargeDividerFP420::PeakShape(), SiLinearChargeDivider::PeakShape(), SiPixelDigitizerAlgorithm::primary_ionization(), ShallowSimhitClustersProducer::produce(), FP420DigiMain::run(), PltSD::sendHit(), Bcm1fSD::sendHit(), TkAccumulatingSensitiveDetector::sendHit(), CSCGasCollisions::simulate(), ChargeDividerFP420::TimeResponse(), Bcm1fSD::updateHit(), PltSD::updateHit(), TkAccumulatingSensitiveDetector::updateHit(), MuonSensitiveDetector::updateHit(), AsciiNeutronWriter::writeCluster(), and CSCGasCollisions::writeSummary().
|
inline |
Entry point in the local Det frame.
Definition at line 35 of file PSimHit.h.
References theEntryPoint.
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), MuonIdTruthInfo::checkSimHitForBestMatch(), DTDigitizer::computeTime(), Bcm1fSD::createHit(), PltSD::createHit(), TkAccumulatingSensitiveDetector::createHit(), ChargeDividerFP420::divide(), SiLinearChargeDivider::divide(), DTDigitizer::dumpHit(), SiPixelRecHitsValid::fillBarrel(), SiPixelRecHitsValid::fillForward(), SubsystemNeutronReader::generateChamberNoise(), CSCWireHitSim::getIonizationClusters(), operator<<(), SiPixelDigitizerAlgorithm::primary_ionization(), HitDigitizerFP420::processHit(), FP420DigiMain::run(), MuonSensitiveDetector::saveHit(), PltSD::sendHit(), Bcm1fSD::sendHit(), TkAccumulatingSensitiveDetector::sendHit(), DTRecHitQuality::simHitDistFromFE(), DTRecHitQuality::simHitDistFromWire(), GlobalRecHitsAnalyzer::simHitDistFromWire(), GlobalRecHitsProducer::simHitDistFromWire(), DTRecHitQuality::simHitImpactAngle(), DTHitAssociator::SimHitOK(), CSCGasCollisions::simulate(), Bcm1fSD::updateHit(), PltSD::updateHit(), TkAccumulatingSensitiveDetector::updateHit(), MuonSensitiveDetector::updateHit(), AsciiNeutronWriter::writeCluster(), and CSCGasCollisions::writeSummary().
|
inline |
Definition at line 105 of file PSimHit.h.
References theEventId.
Referenced by GEMDigiModel::addLinks(), RPCSim::addLinks(), CSCBaseElectronicsSim::addLinks(), DTHitAssociator::associateDTHitId(), TrackerHitAssociator::associateHit(), TrackingParticleNumberOfLayers::calculate(), SiPixelRecHitsValid::fillBarrel(), SiPixelRecHitsValid::fillForward(), DTHitAssociator::initEvent(), SiStripRecHitsValid::rechitanalysis(), and SiStripRecHitsValid::rechitanalysis_matched().
|
inline |
Exit point in the local Det frame.
Definition at line 38 of file PSimHit.h.
References theEntryPoint, and theSegment.
Referenced by SubsystemNeutronWriter::adjust(), MuonIdTruthInfo::checkSimHitForBestMatch(), PltSD::closeHit(), Bcm1fSD::closeHit(), TkAccumulatingSensitiveDetector::closeHit(), DTDigitizer::computeTime(), PltSD::createHit(), Bcm1fSD::createHit(), TkAccumulatingSensitiveDetector::createHit(), ChargeDividerFP420::divide(), SiLinearChargeDivider::divide(), DTDigitizer::dumpHit(), SiPixelRecHitsValid::fillBarrel(), SiPixelRecHitsValid::fillForward(), SubsystemNeutronReader::generateChamberNoise(), CSCWireHitSim::getIonizationClusters(), SiPixelDigitizerAlgorithm::primary_ionization(), HitDigitizerFP420::processHit(), FP420DigiMain::run(), MuonSensitiveDetector::saveHit(), PltSD::sendHit(), Bcm1fSD::sendHit(), TkAccumulatingSensitiveDetector::sendHit(), DTRecHitQuality::simHitDistFromFE(), DTRecHitQuality::simHitDistFromWire(), GlobalRecHitsAnalyzer::simHitDistFromWire(), GlobalRecHitsProducer::simHitDistFromWire(), DTRecHitQuality::simHitImpactAngle(), DTHitAssociator::SimHitOK(), CSCGasCollisions::simulate(), PltSD::updateHit(), Bcm1fSD::updateHit(), TkAccumulatingSensitiveDetector::updateHit(), AsciiNeutronWriter::writeCluster(), and CSCGasCollisions::writeSummary().
|
inline |
Obsolete. Same as momentumAtEntry().unit(), for backward compatibility.
Definition at line 52 of file PSimHit.h.
References f, phiAtEntry(), and thetaAtEntry().
Referenced by DTDigitizer::computeTime(), CkfDebugger::SimHit::localDirection(), CSCSegmentValidation::plotResolution(), TestHits::projectHit(), TestSmoothHits::projectHit(), TestTrackHits::projectHit(), SiStripRecHitsValid::projectHit(), GlobalRecHitsAnalyzer::projectHit(), GlobalRecHitsProducer::projectHit(), SiStripTrackingRecHitsValid::projectHit(), and SiPixelGaussianSmearingRecHitConverterAlgorithm::smearHit().
|
inline |
Local position in the Det frame. Normally it is on the detection surface, but this is not checked. It is computed as the middle point between entry and exit.
Definition at line 44 of file PSimHit.h.
References theEntryPoint, and theSegment.
Referenced by CkfDebugger::analyseCompatibleMeasurements(), TestHits::analyze(), TestSmoothHits::analyze(), TestTrackHits::analyze(), SiPixelErrorEstimation::analyze(), FWTrackingParticleProxyBuilderFullFramework::build(), FWPSimHitProxyBuilder::buildViewType(), DTRecHitQuality::compute(), MuonTrackResidualAnalyzer::computeResolution(), DTDigitizer::computeTime(), SiLinearChargeDivider::DeconvolutionShape(), SiLinearChargeDivider::divide(), DTDigitizer::externalDelays(), DTHitQualityUtils::findMuSimSegmentDirAndPos(), SiTrackerGaussianSmearingRecHitConverter::gaussianSmearing(), GEMSimpleModel::getSimHitBx(), RPCSynchronizer::getSimHitBx(), CkfDebugger::SimHit::globalPosition(), CkfDebugger::SimHit::localPosition(), FTSFromSimHitFactory::operator()(), MuonTrackResidualAnalyzer::RadiusComparatorInOut::operator()(), SiLinearChargeDivider::PeakShape(), CSCStripDigiValidation::plotResolution(), CSCWireDigiValidation::plotResolution(), CSCSegmentValidation::plotResolution(), CSCRecHit2DValidation::plotResolution(), GlobalRecHitsAnalyzer::plotResolution(), GlobalRecHitsProducer::plotResolution(), CkfDebugger::position(), ShallowSimhitClustersProducer::produce(), TestHits::projectHit(), TestSmoothHits::projectHit(), TestTrackHits::projectHit(), SiStripRecHitsValid::projectHit(), GlobalRecHitsAnalyzer::projectHit(), GlobalRecHitsProducer::projectHit(), SiStripTrackingRecHitsValid::projectHit(), SiStripRecHitsValid::rechitanalysis(), SiStripTrackingRecHitsValid::rechitanalysis(), SiStripTrackingRecHitsValid::rechitanalysis_matched(), DTHitAssociator::SimHitOK(), GEMSimpleModel::simulateClustering(), SiStripGaussianSmearingRecHitConverterAlgorithm::smearHit(), SiPixelGaussianSmearingRecHitConverterAlgorithm::smearHit(), and CkfDebugger::testSeed().
|
inline |
The momentum of the track that produced the hit, at entry point.
Definition at line 47 of file PSimHit.h.
References pabs(), phiAtEntry(), and thetaAtEntry().
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), TestHits::analyze(), TestSmoothHits::analyze(), TestTrackHits::analyze(), FWTrackingParticleProxyBuilderFullFramework::build(), MuonTrackResidualAnalyzer::computeResolution(), DTDigitizer::computeTime(), DTDigitizer::dumpHit(), FTSFromSimHitFactory::operator()(), SiPixelGaussianSmearingRecHitConverterAlgorithm::smearHit(), CkfDebugger::testSeed(), and AsciiNeutronWriter::writeCluster().
|
inline |
fast and more accurate access to momentumAtEntry().mag()
Definition at line 63 of file PSimHit.h.
References thePabs.
Referenced by SubsystemNeutronWriter::adjust(), CkfDebugger::associated(), DTDigitizer::computeTime(), ChargeDividerFP420::divide(), SiLinearChargeDivider::divide(), DTDigitizer::dumpHit(), SubsystemNeutronReader::generateChamberNoise(), CSCWireHitSim::getIonizationClusters(), CkfDebugger::goodSimHit(), momentumAtEntry(), CkfDebugger::SimHit::pabs(), SiPixelDigitizerAlgorithm::primary_ionization(), ShallowSimhitClustersProducer::produce(), FP420DigiMain::run(), TkAccumulatingSensitiveDetector::sendHit(), CSCSegmentValidationUtils::SimHitPabsLessThan(), CSCGasCollisions::simulate(), AsciiNeutronWriter::writeCluster(), SubsystemNeutronWriter::writeHits(), and CSCGasCollisions::writeSummary().
|
inline |
The particle type of the track that produced this hit, in standard PDG code. NB: This differs from ORCA5 and earlier, where the code was Geant3. The particle type of the hit may differ from the particle type of the SimTrack with id trackId(). This happends if the hit was created by a secondary track (e.g. a delta ray) originating from the trackId() and not existing as a separate SimTrack.
Definition at line 85 of file PSimHit.h.
References theParticleType.
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), SiPixelErrorEstimation::analyze(), FWPSimHitProxyBuilder::buildViewType(), TrackingParticleNumberOfLayers::calculate(), DTDigitizer::computeTime(), ChargeDividerFP420::divide(), SiLinearChargeDivider::divide(), DTDigitizer::dumpHit(), SubsystemNeutronReader::generateChamberNoise(), HitInfo::getInfo(), CSCWireHitSim::getIonizationClusters(), DTHitAssociator::initEvent(), FTSFromSimHitFactory::operator()(), CkfDebugger::SimHit::particleType(), SiPixelDigitizerAlgorithm::primary_ionization(), ShallowSimhitClustersProducer::produce(), FP420DigiMain::run(), CSCGasCollisions::simulate(), AsciiNeutronWriter::writeCluster(), SubsystemNeutronWriter::writeHits(), and CSCGasCollisions::writeSummary().
|
inline |
fast and more accurate access to momentumAtEntry().phi()
Definition at line 60 of file PSimHit.h.
References thePhiAtEntry.
Referenced by SubsystemNeutronReader::generateChamberNoise(), localDirection(), momentumAtEntry(), CkfDebugger::SimHit::phiAtEntry(), and ShallowSimhitClustersProducer::produce().
|
inline |
The ID of the physics process that created the track that produced the hit. This is useful for identifying hits from secondary interactions, especially in the case when the track that produced the hit was not saved as a SimTrack. The meaning of the ID is defined outside of the PSimHit; The only value with special significance is zero (for "undefined"), so zero should not be the ID of any process.
Definition at line 118 of file PSimHit.h.
References theProcessType.
Referenced by RPCSim::addLinks(), CkfDebugger::analyseCompatibleMeasurements(), TestHits::analyze(), TestSmoothHits::analyze(), TestTrackHits::analyze(), TestOutliers::analyze(), SiPixelErrorEstimation::analyze(), TrackingParticleNumberOfLayers::calculate(), DTDigitizer::dumpHit(), SubsystemNeutronReader::generateChamberNoise(), DTHitAssociator::initEvent(), CkfDebugger::SimHit::processType(), and ShallowSimhitClustersProducer::produce().
|
inline |
|
inline |
fast and more accurate access to momentumAtEntry().theta()
Definition at line 57 of file PSimHit.h.
References theThetaAtEntry.
Referenced by SubsystemNeutronReader::generateChamberNoise(), localDirection(), momentumAtEntry(), ShallowSimhitClustersProducer::produce(), and CkfDebugger::SimHit::thetaAtEntry().
|
inline |
Time of flight in nanoseconds from the primary interaction to the entry point. Always positive in a PSimHit, but may become negative in a SimHit due to bunch assignment.
Definition at line 69 of file PSimHit.h.
References tof().
Referenced by RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), CkfDebugger::associated(), GEMSimpleModel::getSimHitBx(), RPCSynchronizer::getSimHitBx(), CkfDebugger::nextCorrectHits(), less_mag::operator()(), ShallowSimhitClustersProducer::produce(), TkAccumulatingSensitiveDetector::sendHit(), CkfDebugger::SimHit::timeOfFlight(), and AsciiNeutronWriter::writeCluster().
|
inline |
deprecated name for timeOfFlight()
Definition at line 72 of file PSimHit.h.
References theTof.
Referenced by FWTrackingParticleProxyBuilderFullFramework::build(), ChargeDividerFP420::DeconvolutionShape(), SiLinearChargeDivider::DeconvolutionShape(), SiPixelDigitizerAlgorithm::drift(), DTDigitizer::externalDelays(), SubsystemNeutronReader::generateChamberNoise(), CSCDriftSim::getWireHit(), SortByTime::operator()(), operator<<(), ChargeDividerFP420::PeakShape(), SiLinearChargeDivider::PeakShape(), FP420DigiMain::run(), setTof(), timeOfFlight(), and SubsystemNeutronWriter::writeHits().
|
inline |
The SimTrack ID of the "mother" track. This may be the actual charged track that produced the hit, or a "mother" of this track, in case the track that produced the hit was not saved as a SimTrack. This ID must be interpreted in the context of the SimEvent to which the PSimHit belongs.
Definition at line 102 of file PSimHit.h.
References theTrackId.
Referenced by GEMDigiModel::addLinks(), RPCSim::addLinks(), SubsystemNeutronWriter::adjust(), CkfDebugger::analyseRecHitExistance(), DTHitAssociator::associateDTHitId(), TrackerHitAssociator::associateHit(), CkfDebugger::correctMeas(), PltSD::createHit(), Bcm1fSD::createHit(), TkAccumulatingSensitiveDetector::createHit(), DTDigitizer::dumpHit(), SubsystemNeutronReader::generateChamberNoise(), DTHitAssociator::initEvent(), FP420DigiMain::run(), PltSD::sendHit(), Bcm1fSD::sendHit(), TkAccumulatingSensitiveDetector::sendHit(), CkfDebugger::SimHit::trackId(), PltSD::updateHit(), Bcm1fSD::updateHit(), TkAccumulatingSensitiveDetector::updateHit(), and AsciiNeutronWriter::writeCluster().
|
friend |
|
protected |
Definition at line 139 of file PSimHit.h.
Referenced by detUnitId().
|
protected |
Definition at line 129 of file PSimHit.h.
Referenced by UpdatablePSimHit::addEnergyLoss(), energyLoss(), and UpdatablePSimHit::setEnergyLoss().
|
protected |
Definition at line 126 of file PSimHit.h.
Referenced by entryPoint(), exitPoint(), localPosition(), UpdatablePSimHit::setEntryPoint(), and UpdatablePSimHit::updateExitPoint().
|
protected |
Definition at line 141 of file PSimHit.h.
Referenced by eventId(), and setEventId().
|
protected |
Definition at line 134 of file PSimHit.h.
Referenced by particleType().
|
protected |
Definition at line 131 of file PSimHit.h.
Referenced by phiAtEntry().
|
protected |
Definition at line 135 of file PSimHit.h.
Referenced by processType().
|
protected |
Definition at line 127 of file PSimHit.h.
Referenced by exitPoint(), localPosition(), UpdatablePSimHit::setEntryPoint(), and UpdatablePSimHit::updateExitPoint().
|
protected |
Definition at line 130 of file PSimHit.h.
Referenced by thetaAtEntry().
|
protected |
|
protected |
Definition at line 140 of file PSimHit.h.
Referenced by TrackingSlaveSD::setTrackId(), UpdatablePSimHit::setTrackId(), and trackId().