CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
FSimTrack Class Reference

#include <FSimTrack.h>

Inheritance diagram for FSimTrack:
SimTrack CoreSimTrack

Public Member Functions

void addDaughter (int i)
 Add a RecHit for a track on a layer. More...
 
float charge () const
 charge More...
 
int closestDaughterId () const
 Get the index of the closest charged daughter. More...
 
const FSimTrackdaughter (int i) const
 Ith daughter. More...
 
const std::vector< int > & daughters () const
 Vector of daughter indices. More...
 
double decayTime () const
 Return the pre-defined decay time. More...
 
const RawParticleecalEntrance () const
 The particle at ECAL entrance. More...
 
const FSimVertexendVertex () const
 end vertex More...
 
 FSimTrack ()
 Default constructor. More...
 
 FSimTrack (const RawParticle *p, int iv, int ig, int id, FBaseSimEvent *mom, double dt=-1.)
 Constructor from the EmmbSimTrack index in the FBaseSimEvent. More...
 
 FSimTrack (int ipart, const math::XYZTLorentzVector &p, int iv, int ig, int id, double charge, const math::XYZTLorentzVector &tkp, const math::XYZTLorentzVector &tkm, const SimVertex &tkv)
 Hack to interface "old" calorimetry with "new" propagation in tracker (need to construct FSimTracks) More...
 
const HepMC::GenParticle * genParticle () const
 The original GenParticle. More...
 
const RawParticlehcalEntrance () const
 The particle at HCAL entrance. More...
 
const RawParticlehcalExit () const
 The particle at HCAL exir. More...
 
const RawParticlehoEntrance () const
 The particle at HCAL exir. More...
 
int id () const
 the index in FBaseSimEvent and other vectors More...
 
bool isGlobal () const
 particle did not decay before more detectors (useful for newProducer) More...
 
const RawParticlelayer1Entrance () const
 The particle at Preshower Layer 1. More...
 
const RawParticlelayer2Entrance () const
 The particle at Preshower Layer 2. More...
 
const XYZTLorentzVectormomentum () const
 Temporary (until move of SimTrack to Mathcore) - No! Actually very useful. More...
 
const FSimTrackmother () const
 mother More...
 
int nDaughters () const
 Number of daughters. More...
 
bool noDaughter () const
 no daughters More...
 
bool noEndVertex () const
 no end vertex More...
 
bool noMother () const
 no mother particle More...
 
bool notYetToEndVertex (const XYZTLorentzVector &pos) const
 Compare the end vertex position with another position. More...
 
int onEcal () const
 
int onHcal () const
 
int onHO () const
 
int onLayer1 () const
 
int onLayer2 () const
 
int onVFcal () const
 
int outHcal () const
 
const HepPDT::ParticleDataparticleInfo () const
 particle info... More...
 
bool propagated () const
 The particle was tentatively propagated to calorimeters. More...
 
void setClosestDaughterId (int id)
 Set the index of the closest charged daughter. More...
 
void setEcal (const RawParticle &pp, int success)
 Set the ecal variables. More...
 
void setEndVertex (int endv)
 Set the end vertex. More...
 
void setGlobal ()
 particle did not decay before more detectors (useful for newProducer) More...
 
void setHcal (const RawParticle &pp, int success)
 Set the hcal variables. More...
 
void setHcalExit (const RawParticle &pp, int success)
 Set the hcal exit variables. More...
 
void setHO (const RawParticle &pp, int success)
 Set the ho variables. More...
 
void setLayer1 (const RawParticle &pp, int success)
 Set the preshower layer1 variables. More...
 
void setLayer2 (const RawParticle &pp, int success)
 Set the preshower layer2 variables. More...
 
void setMomentum (const math::XYZTLorentzVector &newMomentum)
 Reset the momentum (to be used with care) More...
 
void setOriginVertex (const SimVertex &v)
 Set origin vertex. More...
 
void setPropagate ()
 The particle has been propgated through the tracker. More...
 
void setVFcal (const RawParticle &pp, int success)
 Set the hcal variables. More...
 
const SimTracksimTrack () const
 Simply returns the SimTrack. More...
 
const FSimVertex vertex () const
 Origin vertex. More...
 
const RawParticlevfcalEntrance () const
 The particle at VFCAL entrance. More...
 
virtual ~FSimTrack ()
 Destructor. More...
 
- Public Member Functions inherited from SimTrack
bool crossedBoundary () const
 
int genpartIndex () const
 index of the corresponding Generator particle in the Event container (-1 if no Genpart) More...
 
int getIDAtBoundary () const
 
const math::XYZTLorentzVectorFgetMomentumAtBoundary () const
 
const math::XYZTLorentzVectorFgetPositionAtBoundary () const
 
bool noGenpart () const
 
bool noVertex () const
 
void setCrossedBoundaryVars (bool crossedBoundary, int idAtBoundary, math::XYZTLorentzVectorF positionAtBoundary, math::XYZTLorentzVectorF momentumAtBoundary)
 
void setTkMomentum (const math::XYZTLorentzVectorD &mom)
 
void setTkPosition (const math::XYZVectorD &pos)
 
void setVertexIndex (const int v)
 
 SimTrack ()
 constructor More...
 
 SimTrack (int ipart, const math::XYZTLorentzVectorD &p)
 
 SimTrack (int ipart, const math::XYZTLorentzVectorD &p, int iv, int ig)
 
 SimTrack (int ipart, const math::XYZTLorentzVectorD &p, int iv, int ig, const math::XYZVectorD &tkp, const math::XYZTLorentzVectorD &tkm)
 
 SimTrack (const CoreSimTrack &t, int iv, int ig)
 constructor from transient More...
 
const math::XYZTLorentzVectorDtrackerSurfaceMomentum () const
 
const math::XYZVectorDtrackerSurfacePosition () const
 
int vertIndex () const
 index of the vertex in the Event container (-1 if no vertex) More...
 
- Public Member Functions inherited from CoreSimTrack
float charge () const
 charge More...
 
 CoreSimTrack ()
 constructors More...
 
 CoreSimTrack (int ipart, const math::XYZTLorentzVectorD &p)
 
 CoreSimTrack (int ipart, math::XYZVectorD &ip, double ie)
 
EncodedEventId eventId () const
 
const math::XYZTLorentzVectorDmomentum () const
 
void setEventId (EncodedEventId e)
 
void setTrackId (unsigned int t)
 
unsigned int trackId () const
 
int type () const
 particle type (HEP PDT convension) More...
 

Private Attributes

double charge_
 
int closestDaughterId_
 
std::vector< int > daugh_
 
int ecal
 
RawParticle ECAL_Entrance
 
int endv_
 
int hcal
 
RawParticle HCAL_Entrance
 
RawParticle HCAL_Exit
 
int hcalexit
 
RawParticle HO_Entrance
 
int hoentr
 
int id_
 
const HepPDT::ParticleDatainfo_
 
bool isGlobal_
 
int layer1
 
RawParticle Layer1_Entrance
 
int layer2
 
RawParticle Layer2_Entrance
 
FBaseSimEventmom_
 
XYZTLorentzVector momentum_
 
bool prop
 
double properDecayTime
 
SimVertex vertex_
 
int vfcal
 
RawParticle VFCAL_Entrance
 

Additional Inherited Members

- Public Types inherited from SimTrack
typedef CoreSimTrack Core
 

Detailed Description

A class that mimics SimTrack, with enhanced features. Essentially an interface to SimTrack.

Author
Patrick Janot, CERN $Date: 9-Dec-2003

Definition at line 30 of file FSimTrack.h.

Constructor & Destructor Documentation

◆ FSimTrack() [1/3]

FSimTrack::FSimTrack ( )

Default constructor.

Definition at line 9 of file FSimTrack.cc.

10  : SimTrack(),
11  mom_(nullptr),
12  id_(-1),
13  charge_(-999),
14  endv_(-1),
15  layer1(0),
16  layer2(0),
17  ecal(0),
18  hcal(0),
19  vfcal(0),
20  hcalexit(0),
21  hoentr(0),
22  prop(false),
24  info_(nullptr),
25  properDecayTime(1E99) {
26  ;
27 }
int endv_
Definition: FSimTrack.h:229
int layer2
Definition: FSimTrack.h:232
int ecal
Definition: FSimTrack.h:233
double charge_
Definition: FSimTrack.h:227
const HepPDT::ParticleData * info_
Definition: FSimTrack.h:252
int hoentr
Definition: FSimTrack.h:237
SimTrack()
constructor
Definition: SimTrack.cc:3
int closestDaughterId_
Definition: FSimTrack.h:250
int vfcal
Definition: FSimTrack.h:235
int layer1
Definition: FSimTrack.h:231
FBaseSimEvent * mom_
Definition: FSimTrack.h:224
int hcal
Definition: FSimTrack.h:234
double properDecayTime
Definition: FSimTrack.h:256
int hcalexit
Definition: FSimTrack.h:236
bool prop
Definition: FSimTrack.h:239

◆ FSimTrack() [2/3]

FSimTrack::FSimTrack ( const RawParticle p,
int  iv,
int  ig,
int  id,
FBaseSimEvent mom,
double  dt = -1. 
)

Constructor from the EmmbSimTrack index in the FBaseSimEvent.

Definition at line 29 of file FSimTrack.cc.

References info_, mom_, LHEGenericFilter_cfi::ParticleID, CoreSimTrack::setTrackId(), FBaseSimEvent::theTable(), and CoreSimTrack::type().

30  : // SimTrack(p->pid(),*p,iv,ig), // to uncomment once Mathcore is installed
31  SimTrack(p->pid(), p->momentum(), iv, ig),
32  mom_(mom),
33  id_(id),
34  charge_(-999),
35  endv_(-1),
36  layer1(0),
37  layer2(0),
38  ecal(0),
39  hcal(0),
40  vfcal(0),
41  hcalexit(0),
42  hoentr(0),
43  prop(false),
45  momentum_(p->momentum()),
47  setTrackId(id);
48  info_ = mom_->theTable()->particle(HepPDT::ParticleID(type()));
49 }
float dt
Definition: AMPTWrapper.h:136
int endv_
Definition: FSimTrack.h:229
int32_t *__restrict__ iv
int layer2
Definition: FSimTrack.h:232
int ecal
Definition: FSimTrack.h:233
double charge_
Definition: FSimTrack.h:227
const HepPDT::ParticleData * info_
Definition: FSimTrack.h:252
int hoentr
Definition: FSimTrack.h:237
SimTrack()
constructor
Definition: SimTrack.cc:3
const HepPDT::ParticleDataTable * theTable() const
Get the pointer to the particle data table.
Definition: FBaseSimEvent.h:54
int type() const
particle type (HEP PDT convension)
Definition: CoreSimTrack.h:22
int closestDaughterId_
Definition: FSimTrack.h:250
int vfcal
Definition: FSimTrack.h:235
int layer1
Definition: FSimTrack.h:231
FBaseSimEvent * mom_
Definition: FSimTrack.h:224
void setTrackId(unsigned int t)
Definition: CoreSimTrack.h:30
XYZTLorentzVector momentum_
Definition: FSimTrack.h:254
int hcal
Definition: FSimTrack.h:234
double properDecayTime
Definition: FSimTrack.h:256
int hcalexit
Definition: FSimTrack.h:236
bool prop
Definition: FSimTrack.h:239

◆ FSimTrack() [3/3]

FSimTrack::FSimTrack ( int  ipart,
const math::XYZTLorentzVector p,
int  iv,
int  ig,
int  id,
double  charge,
const math::XYZTLorentzVector tkp,
const math::XYZTLorentzVector tkm,
const SimVertex tkv 
)

Hack to interface "old" calorimetry with "new" propagation in tracker (need to construct FSimTracks)

Definition at line 52 of file FSimTrack.cc.

References CoreSimTrack::setTrackId().

61  : SimTrack(ipart, p, iv, ig, math::XYZVectorD(tkp.X(), tkp.Y(), tkp.Z()), tkm),
62  vertex_(tkv),
63  mom_(nullptr),
64  id_(id),
65  charge_(charge),
66  endv_(-1),
67  layer1(0),
68  layer2(0),
69  ecal(0),
70  hcal(0),
71  vfcal(0),
72  hcalexit(0),
73  hoentr(0),
74  prop(false),
76  info_(nullptr),
77  momentum_(p),
78  properDecayTime(-1),
79  isGlobal_(false) {
80  setTrackId(id);
81 }
SimVertex vertex_
Definition: FSimTrack.h:222
int endv_
Definition: FSimTrack.h:229
int32_t *__restrict__ iv
int layer2
Definition: FSimTrack.h:232
int ecal
Definition: FSimTrack.h:233
double charge_
Definition: FSimTrack.h:227
const HepPDT::ParticleData * info_
Definition: FSimTrack.h:252
int hoentr
Definition: FSimTrack.h:237
SimTrack()
constructor
Definition: SimTrack.cc:3
bool isGlobal_
Definition: FSimTrack.h:258
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > XYZVectorD
spatial vector with cartesian internal representation
Definition: Vector3D.h:8
float charge() const
charge
Definition: FSimTrack.h:56
int closestDaughterId_
Definition: FSimTrack.h:250
int vfcal
Definition: FSimTrack.h:235
int layer1
Definition: FSimTrack.h:231
FBaseSimEvent * mom_
Definition: FSimTrack.h:224
void setTrackId(unsigned int t)
Definition: CoreSimTrack.h:30
XYZTLorentzVector momentum_
Definition: FSimTrack.h:254
int hcal
Definition: FSimTrack.h:234
double properDecayTime
Definition: FSimTrack.h:256
int hcalexit
Definition: FSimTrack.h:236
bool prop
Definition: FSimTrack.h:239

◆ ~FSimTrack()

FSimTrack::~FSimTrack ( )
virtual

Destructor.

Definition at line 83 of file FSimTrack.cc.

83 { ; }

Member Function Documentation

◆ addDaughter()

void FSimTrack::addDaughter ( int  i)
inline

Add a RecHit for a track on a layer.

Add a RecHit for a track on a layer Update the vactors of daughter's id

Definition at line 200 of file FSimTrack.h.

References daugh_, and mps_fire::i.

Referenced by FBaseSimEvent::addSimTrack().

200 { daugh_.push_back(i); }
std::vector< int > daugh_
Definition: FSimTrack.h:249

◆ charge()

float FSimTrack::charge ( void  ) const
inline

charge

Definition at line 56 of file FSimTrack.h.

References charge_, and particleInfo().

Referenced by FBaseSimEvent::fill(), CalorimetryManager::HDShowerSimulation(), CalorimetryManager::MuonMipSimulation(), PFSimParticleProducer::produce(), CalorimetryManager::reconstructHCAL(), and CalorimetryManager::reconstructTrack().

56  {
57  if (particleInfo() == nullptr)
58  return charge_;
59  return particleInfo()->charge();
60  }
const HepPDT::ParticleData * particleInfo() const
particle info...
Definition: FSimTrack.h:53
double charge_
Definition: FSimTrack.h:227

◆ closestDaughterId()

int FSimTrack::closestDaughterId ( ) const
inline

Get the index of the closest charged daughter.

Definition at line 206 of file FSimTrack.h.

References closestDaughterId_.

Referenced by FSimEvent::load(), and TrajectoryManager::makeSinglePSimHit().

206 { return closestDaughterId_; }
int closestDaughterId_
Definition: FSimTrack.h:250

◆ daughter()

const FSimTrack& FSimTrack::daughter ( int  i) const
inline

Ith daughter.

Referenced by TrajectoryManager::moveAllDaughters().

◆ daughters()

const std::vector<int>& FSimTrack::daughters ( ) const
inline

Vector of daughter indices.

Referenced by PFSimParticleProducer::produce().

◆ decayTime()

double FSimTrack::decayTime ( ) const
inline

Return the pre-defined decay time.

Definition at line 218 of file FSimTrack.h.

References properDecayTime.

Referenced by ParticlePropagator::ParticlePropagator().

218 { return properDecayTime; }
double properDecayTime
Definition: FSimTrack.h:256

◆ ecalEntrance()

const RawParticle& FSimTrack::ecalEntrance ( ) const
inline

◆ endVertex()

const FSimVertex& FSimTrack::endVertex ( ) const
inline

◆ genParticle()

const HepMC::GenParticle* FSimTrack::genParticle ( ) const
inline

The original GenParticle.

◆ hcalEntrance()

const RawParticle& FSimTrack::hcalEntrance ( ) const
inline

◆ hcalExit()

const RawParticle& FSimTrack::hcalExit ( ) const
inline

The particle at HCAL exir.

Definition at line 152 of file FSimTrack.h.

References HCAL_Exit.

Referenced by PFSimParticleProducer::produce().

152 { return HCAL_Exit; }
RawParticle HCAL_Exit
Definition: FSimTrack.h:246

◆ hoEntrance()

const RawParticle& FSimTrack::hoEntrance ( ) const
inline

The particle at HCAL exir.

Definition at line 155 of file FSimTrack.h.

References HO_Entrance.

Referenced by PFSimParticleProducer::produce().

155 { return HO_Entrance; }
RawParticle HO_Entrance
Definition: FSimTrack.h:247

◆ id()

int FSimTrack::id ( void  ) const
inline

◆ isGlobal()

bool FSimTrack::isGlobal ( ) const
inline

particle did not decay before more detectors (useful for newProducer)

Definition at line 158 of file FSimTrack.h.

References isGlobal_.

158 { return isGlobal_; }
bool isGlobal_
Definition: FSimTrack.h:258

◆ layer1Entrance()

const RawParticle& FSimTrack::layer1Entrance ( ) const
inline

The particle at Preshower Layer 1.

Definition at line 137 of file FSimTrack.h.

References Layer1_Entrance.

Referenced by EcalHitMaker::cellLine(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::preshowerCellLine(), and PFSimParticleProducer::produce().

137 { return Layer1_Entrance; }
RawParticle Layer1_Entrance
Definition: FSimTrack.h:241

◆ layer2Entrance()

const RawParticle& FSimTrack::layer2Entrance ( ) const
inline

The particle at Preshower Layer 2.

Definition at line 140 of file FSimTrack.h.

References Layer2_Entrance.

Referenced by EcalHitMaker::cellLine(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::preshowerCellLine(), and PFSimParticleProducer::produce().

140 { return Layer2_Entrance; }
RawParticle Layer2_Entrance
Definition: FSimTrack.h:242

◆ momentum()

const XYZTLorentzVector& FSimTrack::momentum ( ) const
inline

Temporary (until move of SimTrack to Mathcore) - No! Actually very useful.

Definition at line 209 of file FSimTrack.h.

References momentum_.

Referenced by FBaseSimEvent::fill(), CalorimetryManager::HDShowerSimulation(), TrajectoryManager::moveAllDaughters(), CalorimetryManager::MuonMipSimulation(), PFSimParticleProducer::produce(), and TrajectoryManager::updateWithDaughters().

209 { return momentum_; }
XYZTLorentzVector momentum_
Definition: FSimTrack.h:254

◆ mother()

const FSimTrack& FSimTrack::mother ( ) const
inline

◆ nDaughters()

int FSimTrack::nDaughters ( ) const
inline

◆ noDaughter()

bool FSimTrack::noDaughter ( ) const
inline

no daughters

◆ noEndVertex()

bool FSimTrack::noEndVertex ( ) const
inline

◆ noMother()

bool FSimTrack::noMother ( ) const
inline

◆ notYetToEndVertex()

bool FSimTrack::notYetToEndVertex ( const XYZTLorentzVector pos) const

Compare the end vertex position with another position.

Definition at line 85 of file FSimTrack.cc.

References MillePedeFileConverter_cfg::e, endVertex(), noEndVertex(), position, vertex(), and beamSpotPI::Z.

Referenced by FBaseSimEvent::fill(), TrajectoryManager::propagateToCalorimeters(), and TrajectoryManager::reconstruct().

85  {
86  // If there is no end vertex, nothing to compare to
87  if (noEndVertex())
88  return true;
89  // If the particle immediately decays, no need to propagate
90  if ((endVertex().position() - vertex().position()).Vect().Mag2() < 1e-4)
91  return false;
92  // If the end vertex has a larger radius, not yet there
93  if (endVertex().position().Perp2() > pos.Perp2() + 1e-10)
94  return true;
95  // If the end vertex has a larger z, not yet there
96  if (fabs(endVertex().position().Z()) > fabs(pos.Z()) + 1e-5)
97  return true;
98  // Otherwise, the end vertex is overtaken already
99  return false;
100 }
bool noEndVertex() const
no end vertex
const FSimVertex vertex() const
Origin vertex.
const FSimVertex & endVertex() const
end vertex
static int position[264][3]
Definition: ReadPGInfo.cc:289

◆ onEcal()

int FSimTrack::onEcal ( ) const
inline

The particle was propagated to the ECAL front face 1 : on the barrel; 2 : on the EndCaps; 3 : no propagation possible 0 : not yet propagated

Definition at line 111 of file FSimTrack.h.

References ecal.

Referenced by EcalHitMaker::cellLine(), FastSimProducer::createFSimTrack(), CalorimetryManager::EMShowerSimulation(), CalorimetryManager::HDShowerSimulation(), CalorimetryManager::MuonMipSimulation(), PFSimParticleProducer::produce(), and CalorimetryManager::reconstructTrack().

111 { return ecal; }
int ecal
Definition: FSimTrack.h:233

◆ onHcal()

int FSimTrack::onHcal ( ) const
inline

The particle was propagated to the HCAL front face 1 : on the barrel; 2 : on the EndCaps; 3 : no propagation possible 0 : not yet propagated

Definition at line 116 of file FSimTrack.h.

References hcal.

Referenced by EcalHitMaker::cellLine(), FastSimProducer::createFSimTrack(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::hcalCellLine(), CalorimetryManager::HDShowerSimulation(), CalorimetryManager::MuonMipSimulation(), PFSimParticleProducer::produce(), CalorimetryManager::reconstructHCAL(), and CalorimetryManager::reconstructTrack().

116 { return hcal; }
int hcal
Definition: FSimTrack.h:234

◆ onHO()

int FSimTrack::onHO ( ) const
inline

1 : on the barrel; 2 : on the EndCaps; 3 : no propagation possible 0 : not yet propagated

Definition at line 131 of file FSimTrack.h.

References hoentr.

131 { return hoentr; }
int hoentr
Definition: FSimTrack.h:237

◆ onLayer1()

int FSimTrack::onLayer1 ( ) const
inline

The particle was propagated to the Preshower Layer1 2 : on the EndCaps; (no Barrel Preshower); no propagation possible 0 : not yet propagated or no pe

Definition at line 101 of file FSimTrack.h.

References layer1.

Referenced by EcalHitMaker::cellLine(), FastSimProducer::createFSimTrack(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::preshowerCellLine(), and PFSimParticleProducer::produce().

101 { return layer1; }
int layer1
Definition: FSimTrack.h:231

◆ onLayer2()

int FSimTrack::onLayer2 ( ) const
inline

The particle was propagated to the Preshower Layer2 2 : on the EndCaps; (no Barrel Preshower); 3 : No propagation possible 0 : not yet propagated

Definition at line 106 of file FSimTrack.h.

References layer2.

Referenced by EcalHitMaker::cellLine(), FastSimProducer::createFSimTrack(), CalorimetryManager::EMShowerSimulation(), EcalHitMaker::preshowerCellLine(), and PFSimParticleProducer::produce().

106 { return layer2; }
int layer2
Definition: FSimTrack.h:232

◆ onVFcal()

int FSimTrack::onVFcal ( ) const
inline

The particle was propagated to the VFCAL front face 2 : on the EndCaps (No VFCAL Barrel); 3 : no propagation possible 0 : not yet propagated

Definition at line 121 of file FSimTrack.h.

References vfcal.

Referenced by EcalHitMaker::cellLine(), FastSimProducer::createFSimTrack(), EcalHitMaker::hcalCellLine(), CalorimetryManager::HDShowerSimulation(), CalorimetryManager::MuonMipSimulation(), FastHFShowerLibrary::recoHFShowerLibrary(), and CalorimetryManager::reconstructTrack().

121 { return vfcal; }
int vfcal
Definition: FSimTrack.h:235

◆ outHcal()

int FSimTrack::outHcal ( ) const
inline

The particle was propagated to the HCAL back face 1 : on the barrel; 2 : on the EndCaps; 3 : no propagation possible 0 : not yet propagated

Definition at line 126 of file FSimTrack.h.

References hcalexit.

126 { return hcalexit; }
int hcalexit
Definition: FSimTrack.h:236

◆ particleInfo()

const HepPDT::ParticleData* FSimTrack::particleInfo ( ) const
inline

particle info...

Definition at line 53 of file FSimTrack.h.

References info_.

Referenced by charge().

53 { return info_; }
const HepPDT::ParticleData * info_
Definition: FSimTrack.h:252

◆ propagated()

bool FSimTrack::propagated ( ) const
inline

The particle was tentatively propagated to calorimeters.

Definition at line 134 of file FSimTrack.h.

References prop.

134 { return prop; }
bool prop
Definition: FSimTrack.h:239

◆ setClosestDaughterId()

void FSimTrack::setClosestDaughterId ( int  id)
inline

Set the index of the closest charged daughter.

Definition at line 203 of file FSimTrack.h.

References closestDaughterId_, and id().

Referenced by MaterialEffects::interact(), and TrajectoryManager::updateWithDaughters().

203 { closestDaughterId_ = id; }
int closestDaughterId_
Definition: FSimTrack.h:250
int id() const
the index in FBaseSimEvent and other vectors
Definition: FSimTrack.h:96

◆ setEcal()

void FSimTrack::setEcal ( const RawParticle pp,
int  success 
)

◆ setEndVertex()

void FSimTrack::setEndVertex ( int  endv)
inline

Set the end vertex.

Definition at line 167 of file FSimTrack.h.

References endv_.

Referenced by FBaseSimEvent::addSimVertex().

167 { endv_ = endv; }
int endv_
Definition: FSimTrack.h:229

◆ setGlobal()

void FSimTrack::setGlobal ( )
inline

particle did not decay before more detectors (useful for newProducer)

Definition at line 161 of file FSimTrack.h.

References isGlobal_.

Referenced by FastSimProducer::createFSimTrack().

161 { isGlobal_ = true; }
bool isGlobal_
Definition: FSimTrack.h:258

◆ setHcal()

void FSimTrack::setHcal ( const RawParticle pp,
int  success 
)

◆ setHcalExit()

void FSimTrack::setHcalExit ( const RawParticle pp,
int  success 
)

Set the hcal exit variables.

Set the hcal variables.

Definition at line 136 of file FSimTrack.cc.

References HCAL_Exit, hcalexit, createTree::pp, and summarizeEdmComparisonLogfiles::success.

Referenced by FBaseSimEvent::fill().

◆ setHO()

void FSimTrack::setHO ( const RawParticle pp,
int  success 
)

Set the ho variables.

Definition at line 141 of file FSimTrack.cc.

References HO_Entrance, hoentr, createTree::pp, and summarizeEdmComparisonLogfiles::success.

Referenced by FBaseSimEvent::fill().

◆ setLayer1()

void FSimTrack::setLayer1 ( const RawParticle pp,
int  success 
)

◆ setLayer2()

void FSimTrack::setLayer2 ( const RawParticle pp,
int  success 
)

◆ setMomentum()

void FSimTrack::setMomentum ( const math::XYZTLorentzVector newMomentum)
inline

Reset the momentum (to be used with care)

Definition at line 212 of file FSimTrack.h.

References momentum_.

Referenced by TrajectoryManager::moveAllDaughters().

212 { momentum_ = newMomentum; }
XYZTLorentzVector momentum_
Definition: FSimTrack.h:254

◆ setOriginVertex()

void FSimTrack::setOriginVertex ( const SimVertex v)
inline

Set origin vertex.

Definition at line 164 of file FSimTrack.h.

References findQualityFiles::v, and vertex_.

164 { vertex_ = v; }
SimVertex vertex_
Definition: FSimTrack.h:222

◆ setPropagate()

void FSimTrack::setPropagate ( )

The particle has been propgated through the tracker.

Set the variable at the beginning of the propagation.

Definition at line 103 of file FSimTrack.cc.

References prop.

Referenced by TrajectoryManager::reconstruct().

103 { prop = true; }
bool prop
Definition: FSimTrack.h:239

◆ setVFcal()

void FSimTrack::setVFcal ( const RawParticle pp,
int  success 
)

◆ simTrack()

const SimTrack& FSimTrack::simTrack ( ) const
inline

Simply returns the SimTrack.

Definition at line 215 of file FSimTrack.h.

215 { return *this; }

◆ vertex()

const FSimVertex FSimTrack::vertex ( ) const
inline

◆ vfcalEntrance()

const RawParticle& FSimTrack::vfcalEntrance ( ) const
inline

Member Data Documentation

◆ charge_

double FSimTrack::charge_
private

Definition at line 227 of file FSimTrack.h.

Referenced by charge().

◆ closestDaughterId_

int FSimTrack::closestDaughterId_
private

Definition at line 250 of file FSimTrack.h.

Referenced by closestDaughterId(), and setClosestDaughterId().

◆ daugh_

std::vector<int> FSimTrack::daugh_
private

Definition at line 249 of file FSimTrack.h.

Referenced by addDaughter().

◆ ecal

int FSimTrack::ecal
private

Definition at line 233 of file FSimTrack.h.

Referenced by onEcal().

◆ ECAL_Entrance

RawParticle FSimTrack::ECAL_Entrance
private

Definition at line 243 of file FSimTrack.h.

Referenced by ecalEntrance(), and setEcal().

◆ endv_

int FSimTrack::endv_
private

Definition at line 229 of file FSimTrack.h.

Referenced by setEndVertex().

◆ hcal

int FSimTrack::hcal
private

Definition at line 234 of file FSimTrack.h.

Referenced by onHcal().

◆ HCAL_Entrance

RawParticle FSimTrack::HCAL_Entrance
private

Definition at line 244 of file FSimTrack.h.

Referenced by hcalEntrance(), and setHcal().

◆ HCAL_Exit

RawParticle FSimTrack::HCAL_Exit
private

Definition at line 246 of file FSimTrack.h.

Referenced by hcalExit(), and setHcalExit().

◆ hcalexit

int FSimTrack::hcalexit
private

Definition at line 236 of file FSimTrack.h.

Referenced by outHcal(), and setHcalExit().

◆ HO_Entrance

RawParticle FSimTrack::HO_Entrance
private

Definition at line 247 of file FSimTrack.h.

Referenced by hoEntrance(), and setHO().

◆ hoentr

int FSimTrack::hoentr
private

Definition at line 237 of file FSimTrack.h.

Referenced by onHO(), and setHO().

◆ id_

int FSimTrack::id_
private

Definition at line 226 of file FSimTrack.h.

Referenced by id().

◆ info_

const HepPDT::ParticleData* FSimTrack::info_
private

Definition at line 252 of file FSimTrack.h.

Referenced by FSimTrack(), and particleInfo().

◆ isGlobal_

bool FSimTrack::isGlobal_
private

Definition at line 258 of file FSimTrack.h.

Referenced by isGlobal(), and setGlobal().

◆ layer1

int FSimTrack::layer1
private

Definition at line 231 of file FSimTrack.h.

Referenced by onLayer1(), and setLayer1().

◆ Layer1_Entrance

RawParticle FSimTrack::Layer1_Entrance
private

Definition at line 241 of file FSimTrack.h.

Referenced by layer1Entrance(), and setLayer1().

◆ layer2

int FSimTrack::layer2
private

Definition at line 232 of file FSimTrack.h.

Referenced by onLayer2(), and setLayer2().

◆ Layer2_Entrance

RawParticle FSimTrack::Layer2_Entrance
private

Definition at line 242 of file FSimTrack.h.

Referenced by layer2Entrance(), and setLayer2().

◆ mom_

FBaseSimEvent* FSimTrack::mom_
private

Definition at line 224 of file FSimTrack.h.

Referenced by FSimTrack().

◆ momentum_

XYZTLorentzVector FSimTrack::momentum_
private

Definition at line 254 of file FSimTrack.h.

Referenced by momentum(), and setMomentum().

◆ prop

bool FSimTrack::prop
private

Definition at line 239 of file FSimTrack.h.

Referenced by propagated(), and setPropagate().

◆ properDecayTime

double FSimTrack::properDecayTime
private

Definition at line 256 of file FSimTrack.h.

Referenced by decayTime().

◆ vertex_

SimVertex FSimTrack::vertex_
private

Definition at line 222 of file FSimTrack.h.

Referenced by setOriginVertex().

◆ vfcal

int FSimTrack::vfcal
private

Definition at line 235 of file FSimTrack.h.

Referenced by onVFcal(), and setVFcal().

◆ VFCAL_Entrance

RawParticle FSimTrack::VFCAL_Entrance
private

Definition at line 245 of file FSimTrack.h.

Referenced by setVFcal(), and vfcalEntrance().