CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes | Friends
PSimHit Class Reference

#include <PSimHit.h>

Inheritance diagram for PSimHit:
UpdatablePSimHit

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
 

Detailed Description

Persistent-capable SimHit. Suitable for tracking detectors.

Definition at line 15 of file PSimHit.h.

Constructor & Destructor Documentation

◆ PSimHit() [1/2]

PSimHit::PSimHit ( )
inline

Definition at line 17 of file PSimHit.h.

17 : theDetUnitId(0) {}

◆ PSimHit() [2/2]

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 
)
inline

Definition at line 19 of file PSimHit.h.

Member Function Documentation

◆ detUnitId()

unsigned int PSimHit::detUnitId ( ) const
inline

◆ energyLoss()

float PSimHit::energyLoss ( ) const
inline

◆ entryPoint()

Local3DPoint PSimHit::entryPoint ( ) const
inline

◆ eventId()

EncodedEventId PSimHit::eventId ( ) const
inline

◆ exitPoint()

Local3DPoint PSimHit::exitPoint ( ) const
inline

◆ localDirection()

LocalVector PSimHit::localDirection ( ) const
inline

Obsolete. Same as momentumAtEntry().unit(), for backward compatibility.

Definition at line 58 of file PSimHit.h.

58 { return LocalVector(thetaAtEntry(), phiAtEntry(), 1.f); }

References f, phiAtEntry(), and thetaAtEntry().

Referenced by CkfDebugger::SimHit::localDirection().

◆ localPosition()

Local3DPoint PSimHit::localPosition ( ) const
inline

◆ momentumAtEntry()

LocalVector PSimHit::momentumAtEntry ( ) const
inline

◆ pabs()

float PSimHit::pabs ( ) const
inline

◆ particleType()

int PSimHit::particleType ( ) const
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 89 of file PSimHit.h.

89 { return theParticleType; }

References theParticleType.

Referenced by SiPixelErrorEstimation::analyze(), FWPSimHitProxyBuilder::buildViewType(), CSCAnodeLCTAnalyzer::digiSimHitAssociator(), CSCCathodeLCTAnalyzer::digiSimHitAssociator(), SubsystemNeutronReader::generateChamberNoise(), GEMBaseValidation::isMuonSimHit(), CkfDebugger::SimHit::particleType(), FP420DigiMain::run(), CSCGasCollisions::simulate(), and CSCGasCollisions::writeSummary().

◆ phiAtEntry()

Geom::Phi<float> PSimHit::phiAtEntry ( ) const
inline

◆ processType()

unsigned short PSimHit::processType ( ) const
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 120 of file PSimHit.h.

120 { return theProcessType; }

References theProcessType.

Referenced by CkfDebugger::analyseCompatibleMeasurements(), TestHits::analyze(), TestSmoothHits::analyze(), TestOutliers::analyze(), TestTrackHits::analyze(), SiPixelErrorEstimation::analyze(), TrackerHitAssociator::associateHit(), SubsystemNeutronReader::generateChamberNoise(), and CkfDebugger::SimHit::processType().

◆ setEventId()

void PSimHit::setEventId ( EncodedEventId  e)
inline

Definition at line 110 of file PSimHit.h.

110 { theEventId = e; }

References MillePedeFileConverter_cfg::e, and theEventId.

◆ setTof()

void PSimHit::setTof ( float  tof)
inline

Definition at line 122 of file PSimHit.h.

122 { theTof = tof; }

References theTof, and tof().

◆ thetaAtEntry()

Geom::Theta<float> PSimHit::thetaAtEntry ( ) const
inline

◆ timeOfFlight()

float PSimHit::timeOfFlight ( ) const
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 73 of file PSimHit.h.

73 { return tof(); }

References tof().

Referenced by CkfDebugger::associated(), ME0SimpleModel::getSimHitBx(), GEMSignalModel::getSimHitBx(), RPCSynchronizer::getSimHitBx(), RPCSynchronizer::getSimHitBxAndTimingForIRPC(), CkfDebugger::nextCorrectHits(), TkAccumulatingSensitiveDetector::sendHit(), and CkfDebugger::SimHit::timeOfFlight().

◆ tof()

float PSimHit::tof ( ) const
inline

deprecated name for timeOfFlight()

Definition at line 76 of file PSimHit.h.

76 { return theTof; }

References theTof.

Referenced by SubsystemNeutronReader::generateChamberNoise(), SortByTime::operator()(), FP420DigiMain::run(), setTof(), and timeOfFlight().

◆ trackId()

unsigned int PSimHit::trackId ( ) const
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 106 of file PSimHit.h.

106 { return theTrackId; }

References theTrackId.

Referenced by CkfDebugger::analyseRecHitExistance(), DTHitAssociator::associateDTHitId(), TrackerHitAssociator::associateHit(), CkfDebugger::correctMeas(), TkAccumulatingSensitiveDetector::createHit(), SubsystemNeutronReader::generateChamberNoise(), FastTrackerRecHitMatcher::produce(), FP420DigiMain::run(), TkAccumulatingSensitiveDetector::sendHit(), CkfDebugger::SimHit::trackId(), and TkAccumulatingSensitiveDetector::updateHit().

Friends And Related Function Documentation

◆ TrackingSlaveSD

friend class TrackingSlaveSD
friend

Definition at line 143 of file PSimHit.h.

Member Data Documentation

◆ theDetUnitId

unsigned int PSimHit::theDetUnitId
protected

Definition at line 139 of file PSimHit.h.

Referenced by detUnitId().

◆ theEnergyLoss

float PSimHit::theEnergyLoss
protected

◆ theEntryPoint

Local3DPoint PSimHit::theEntryPoint
protected

◆ theEventId

EncodedEventId PSimHit::theEventId
protected

Definition at line 141 of file PSimHit.h.

Referenced by eventId(), and setEventId().

◆ thePabs

float PSimHit::thePabs
protected

Definition at line 128 of file PSimHit.h.

Referenced by pabs().

◆ theParticleType

int PSimHit::theParticleType
protected

Definition at line 134 of file PSimHit.h.

Referenced by particleType().

◆ thePhiAtEntry

float PSimHit::thePhiAtEntry
protected

Definition at line 131 of file PSimHit.h.

Referenced by phiAtEntry().

◆ theProcessType

unsigned short PSimHit::theProcessType
protected

Definition at line 135 of file PSimHit.h.

Referenced by processType().

◆ theSegment

Local3DVector PSimHit::theSegment
protected

◆ theThetaAtEntry

float PSimHit::theThetaAtEntry
protected

Definition at line 130 of file PSimHit.h.

Referenced by thetaAtEntry().

◆ theTof

float PSimHit::theTof
protected

Definition at line 133 of file PSimHit.h.

Referenced by setTof(), and tof().

◆ theTrackId

unsigned int PSimHit::theTrackId
protected

Definition at line 140 of file PSimHit.h.

Referenced by UpdatablePSimHit::setTrackId(), and trackId().

f
double f[11][100]
Definition: MuScleFitUtils.cc:78
mps_splice.entry
entry
Definition: mps_splice.py:68
Geom::Theta
Definition: Theta.h:12
PSimHit::tof
float tof() const
deprecated name for timeOfFlight()
Definition: PSimHit.h:76
PSimHit::theEntryPoint
Local3DPoint theEntryPoint
Definition: PSimHit.h:126
PSimHit::theSegment
Local3DVector theSegment
Definition: PSimHit.h:127
PSimHit::theTof
float theTof
Definition: PSimHit.h:133
PSimHit::thePabs
float thePabs
Definition: PSimHit.h:128
PSimHit::pabs
float pabs() const
fast and more accurate access to momentumAtEntry().mag()
Definition: PSimHit.h:67
PSimHit::thePhiAtEntry
float thePhiAtEntry
Definition: PSimHit.h:131
PSimHit::theProcessType
unsigned short theProcessType
Definition: PSimHit.h:135
PSimHit::processType
unsigned short processType() const
Definition: PSimHit.h:120
theta
Geom::Theta< T > theta() const
Definition: Basic3DVectorLD.h:150
PSimHit::theTrackId
unsigned int theTrackId
Definition: PSimHit.h:140
LocalVector
Local3DVector LocalVector
Definition: LocalVector.h:12
Geom::Phi< float >
PSimHit::phiAtEntry
Geom::Phi< float > phiAtEntry() const
fast and more accurate access to momentumAtEntry().phi()
Definition: PSimHit.h:64
DDAxes::phi
PSimHit::theThetaAtEntry
float theThetaAtEntry
Definition: PSimHit.h:130
PSimHit::particleType
int particleType() const
Definition: PSimHit.h:89
PSimHit::trackId
unsigned int trackId() const
Definition: PSimHit.h:106
PSimHit::theParticleType
int theParticleType
Definition: PSimHit.h:134
PSimHit::theEnergyLoss
float theEnergyLoss
Definition: PSimHit.h:129
beamvalidation.exit
def exit(msg="")
Definition: beamvalidation.py:53
PSimHit::thetaAtEntry
Geom::Theta< float > thetaAtEntry() const
fast and more accurate access to momentumAtEntry().theta()
Definition: PSimHit.h:61
PSimHit::theDetUnitId
unsigned int theDetUnitId
Definition: PSimHit.h:139
PSimHit::theEventId
EncodedEventId theEventId
Definition: PSimHit.h:141
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37