Basic utility for reading a binary stdhep file and filling a LCCollectionVec with MCParticles containing the stdhep file information. More...
#include <UTIL/LCStdHepRdrNew.h>
Public Member Functions | |
LCStdHepRdrNew (const char *evfile) | |
Open the stdhep input file in the constructer. | |
~LCStdHepRdrNew () | |
noop | |
long | getNumberOfEvents () const |
Get number of events in the stdhep file. More... | |
long | getNumberOfTotalEventsExpected () const |
Get total number of expected events in the whole set of stdhep files from which this stdhep file belongs to. More... | |
IMPL::LCCollectionVec * | readEvent () |
Read an event and return an LCCollectionVec of MCParticles. More... | |
void | updateNextEvent (IMPL::LCEventImpl *evt, const char *colName=EVENT::LCIO::MCPARTICLE) |
Reads the next stdhep event and adds a new MCParticle collection to the the event with default name 'MCParticle'. More... | |
void | printHeader (std::ostream &os=std::cout) |
Print the file header to the given ostream. | |
int | threeCharge (int pdgID) const |
Return the charge of the particle times 3 - code copied from HepPDT package. More... | |
void | setWriteEventNumber (bool writeEventNumber) |
Basic utility for reading a binary stdhep file and filling a LCCollectionVec with MCParticles containing the stdhep file information.
|
inline |
Get number of events in the stdhep file.
This number is read from the file header (no guarantee that it is correct)
|
inline |
Get total number of expected events in the whole set of stdhep files from which this stdhep file belongs to.
This number is read from the file header (no guarantee that it is correct)
IMPL::LCCollectionVec * UTIL::LCStdHepRdrNew::readEvent | ( | ) |
Read an event and return an LCCollectionVec of MCParticles.
References IMPL::MCParticleImpl::addParent(), IMPL::MCParticleImpl::getDaughters(), IMPL::LCCollectionVec::getElementAt(), IMPL::MCParticleImpl::getGeneratorStatus(), IMPL::MCParticleImpl::getParents(), IMPL::MCParticleImpl::getPDG(), IMPL::LCCollectionVec::parameters(), IMPL::MCParticleImpl::setCharge(), IMPL::MCParticleImpl::setColorFlow(), IMPL::MCParticleImpl::setGeneratorStatus(), IMPL::MCParticleImpl::setMass(), IMPL::MCParticleImpl::setMomentum(), IMPL::MCParticleImpl::setPDG(), IMPL::MCParticleImpl::setSimulatorStatus(), IMPL::MCParticleImpl::setSpin(), IMPL::MCParticleImpl::setTime(), EVENT::LCParameters::setValue(), and IMPL::MCParticleImpl::setVertex().
int UTIL::LCStdHepRdrNew::threeCharge | ( | int | pdgID | ) | const |
Return the charge of the particle times 3 - code copied from HepPDT package.
PID digits (base 10) are: n nr nl nq1 nq2 nq3 nj The location enum provides a convenient index into the PID.
void UTIL::LCStdHepRdrNew::updateNextEvent | ( | IMPL::LCEventImpl * | evt, |
const char * | colName = EVENT::LCIO::MCPARTICLE |
||
) |
Reads the next stdhep event and adds a new MCParticle collection to the the event with default name 'MCParticle'.
IO::EndOfDataException | if no event in stdhep file |
References IMPL::LCEventImpl::addCollection(), EVENT::LCParameters::getFloatVal(), EVENT::LCParameters::getIntVal(), IMPL::LCCollectionVec::getParameters(), IMPL::LCEventImpl::parameters(), IMPL::LCEventImpl::setEventNumber(), EVENT::LCParameters::setValue(), and IMPL::LCEventImpl::setWeight().