1 #ifndef FastSimulation_Event_FSimTrack_H 2 #define FastSimulation_Event_FSimTrack_H 78 inline const std::vector<int>&
daughters()
const;
96 inline int id()
const {
return id_; }
264 #include "FastSimulation/Event/interface/FSimTrack.icc" 266 #endif // FSimTrack_H bool isGlobal() const
particle did not decay before more detectors (useful for newProducer)
bool noMother() const
no mother particle
const RawParticle & vfcalEntrance() const
The particle at VFCAL entrance.
const HepPDT::ParticleData * particleInfo() const
particle info...
const RawParticle & hcalEntrance() const
The particle at HCAL entrance.
const RawParticle & layer2Entrance() const
The particle at Preshower Layer 2.
RawParticle Layer1_Entrance
const HepPDT::ParticleData * info_
RawParticle VFCAL_Entrance
const RawParticle & ecalEntrance() const
The particle at ECAL entrance.
virtual ~FSimTrack()
Destructor.
void setEcal(const RawParticle &pp, int success)
Set the ecal variables.
void setGlobal()
particle did not decay before more detectors (useful for newProducer)
void setPropagate()
The particle has been propgated through the tracker.
void setClosestDaughterId(int id)
Set the index of the closest charged daughter.
void setLayer2(const RawParticle &pp, int success)
Set the preshower layer2 variables.
const HepMC::GenParticle * genParticle() const
The original GenParticle.
const RawParticle & hoEntrance() const
The particle at HCAL exir.
bool noEndVertex() const
no end vertex
const FSimVertex vertex() const
Origin vertex.
const FSimVertex & endVertex() const
end vertex
const FSimTrack & daughter(int i) const
Ith daughter.
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
void setLayer1(const RawParticle &pp, int success)
Set the preshower layer1 variables.
const XYZTLorentzVector & momentum() const
Temporary (until move of SimTrack to Mathcore) - No! Actually very useful.
const RawParticle & hcalExit() const
The particle at HCAL exir.
float charge() const
charge
const std::vector< int > & daughters() const
Vector of daughter indices.
bool notYetToEndVertex(const XYZTLorentzVector &pos) const
Compare the end vertex position with another position.
FSimTrack()
Default constructor.
HepPDT::ParticleData ParticleData
bool propagated() const
The particle was tentatively propagated to calorimeters.
int nDaughters() const
Number of daughters.
double decayTime() const
Return the pre-defined decay time.
int closestDaughterId() const
Get the index of the closest charged daughter.
RawParticle HCAL_Entrance
void setHcalExit(const RawParticle &pp, int success)
Set the hcal exit variables.
void setOriginVertex(const SimVertex &v)
Set origin vertex.
bool noDaughter() const
no daughters
std::ostream & operator<<(std::ostream &o, const FSimTrack &t)
void setEndVertex(int endv)
Set the end vertex.
XYZTLorentzVector momentum_
void addDaughter(int i)
Add a RecHit for a track on a layer.
void setHO(const RawParticle &pp, int success)
Set the ho variables.
const SimTrack & simTrack() const
Simply returns the SimTrack.
void setVFcal(const RawParticle &pp, int success)
Set the hcal variables.
RawParticle Layer2_Entrance
void setHcal(const RawParticle &pp, int success)
Set the hcal variables.
const RawParticle & layer1Entrance() const
The particle at Preshower Layer 1.
RawParticle ECAL_Entrance
void setMomentum(const math::XYZTLorentzVector &newMomentum)
Reset the momentum (to be used with care)
std::vector< int > daugh_
int id() const
the index in FBaseSimEvent and other vectors
const FSimTrack & mother() const
mother
math::XYZTLorentzVector XYZTLorentzVector