Go to the documentation of this file. 1 #ifndef FastSimulation_Event_FBaseSimEvent_H
2 #define FastSimulation_Event_FBaseSimEvent_H
60 void fill(
const std::vector<SimTrack>&,
const std::vector<SimVertex>&);
166 #include "FastSimulation/Event/interface/FBaseSimEvent.icc"
168 #endif // FBaseSimEvent_H
std::vector< HepMC::GenParticle * > * genparts() const
The pointer to the vector of GenParticle's.
A FSimVertexType hold the information on the vertex origine.
FSimVertexTypeCollection * theFSimVerticesType
std::vector< FSimVertex > * theSimVertices
void print() const
print the FBaseSimEvent in an intelligible way
FSimVertexType & vertexType(int id) const
Return vertex with given Id.
void fill(const HepMC::GenEvent &hev)
fill the FBaseSimEvent from the current HepMC::GenEvent
unsigned int theVertexSize
void initializePdt(const HepPDT::ParticleDataTable *aPdt)
Initialize the particle data table.
FSimVertex & vertex(int id) const
Return vertex with given Id.
double lateVertexPosition
unsigned int nChargedTracks() const
Number of "reconstructed" charged tracks.
void clear()
clear the FBaseSimEvent content before the next event
void addParticles(const HepMC::GenEvent &hev)
Add the particles and their vertices to the list.
unsigned int nVertices() const
Number of vertices.
void printMCTruth(const HepMC::GenEvent &hev)
print the original MCTruth event
math::XYZTLorentzVector XYZTLorentzVector
const HepMC::GenParticle * embdGenpart(int i) const
return MC track with a given id
const SimVertex & embdVertex(int i) const
return embedded vertex with given id
FSimTrack & track(int id) const
Return track with given Id.
std::vector< FSimVertex > * vertices() const
The pointer to the vector of FSimVertex's.
unsigned int nSimVertices
const HepPDT::ParticleDataTable * theTable() const
Get the pointer to the particle data table.
std::vector< unsigned > * theChargedTracks
KineParticleFilter * myFilter
The particle filter.
int addSimTrack(const RawParticle *p, int iv, int ig=-1, const HepMC::GenVertex *ev=nullptr)
Add a new track to the Event and to the various lists.
~FBaseSimEvent()
usual virtual destructor
unsigned int nGenParts() const
Number of generator particles.
std::vector< FSimTrack > * theSimTracks
unsigned int theChargedSize
int chargedTrack(int id) const
return "reconstructed" charged tracks index.
unsigned int theTrackSize
std::vector< FSimTrack > * tracks() const
The pointer to the vector of FSimTrack's.
const FSimVertexType & embdVertexType(int i) const
return embedded vertex type with given id
void addChargedTrack(int id)
Add an id in the vector of charged tracks id's.
unsigned int nChargedParticleTracks
unsigned int nTracks() const
Number of tracks.
std::vector< FSimVertexType > FSimVertexTypeCollection
collection of FSimVertexType objects
int addSimVertex(const XYZTLorentzVector &decayVertex, int im=-1, FSimVertexType::VertexType type=FSimVertexType::ANY)
Add a new vertex to the Event and to the various lists.
const KineParticleFilter & filter() const
unsigned int nGenParticles
const SimTrack & embdTrack(int i) const
return embedded track with given id
FBaseSimEvent(const edm::ParameterSet &kine)
Default constructor.
const ParticleDataTable * pdt
HepPDT::ParticleDataTable ParticleDataTable
std::vector< HepMC::GenParticle * > * theGenParticles