#include <HepMCConverter.h>
Classes | |
struct | Vertex |
Public Types | |
typedef map< tcColinePtr, long > | FlowMap |
typedef Traits::EventT | GenEvent |
typedef Traits::ParticleT | GenParticle |
typedef Traits::VertexT | GenVertex |
typedef map< const Vertex *, GenVertex * > | GenVertexMap |
typedef map< tcPPtr, GenParticle * > | ParticleMap |
typedef Traits::PdfInfoT | PdfInfo |
typedef map< tcPPtr, Vertex * > | VertexMap |
Static Public Member Functions | |
static GenEvent * | convert (const Event &ev, bool nocopies=false, Energy eunit=Traits::defaultEnergyUnit(), Length lunit=Traits::defaultLengthUnit()) |
static void | convert (const Event &ev, GenEvent &gev, bool nocopies, Energy eunit, Length lunit) |
static void | convert (const Event &ev, GenEvent &gev, bool nocopies=false) |
Private Member Functions | |
GenParticle * | createParticle (tcPPtr p) const |
GenVertex * | createVertex (Vertex *v) |
HepMCConverter (const Event &ev, bool nocopies, Energy eunit, Length lunit) | |
HepMCConverter (const Event &ev, GenEvent &gev, bool nocopies, Energy eunit, Length lunit) | |
HepMCConverter () | |
HepMCConverter (const HepMCConverter &) | |
void | init (const Event &ev, bool nocopies) |
void | join (tcPPtr parent, tcPPtr child) |
HepMCConverter & | operator= (const HepMCConverter &) |
void | setPdfInfo (const Event &e) |
void | sortTopologically (tcPVector &allv) |
Private Attributes | |
VertexMap | decv |
tcEHPtr | eh |
Energy | energyUnit |
FlowMap | flowmap |
GenEvent * | geneve |
Length | lengthUnit |
ParticleMap | pmap |
VertexMap | prov |
vector< Vertex > | vertices |
GenVertexMap | vmap |
The HepMCConverter defines only one public static function which converts a ThePEG::Event object to a HepMC::GenEvent
. All mother-daughter relationships and colour information is preserved.
Definition at line 32 of file HepMCConverter.h.
typedef map<tcColinePtr,long> ThePEG::HepMCConverter< HepMCEventT, Traits >::FlowMap |
Map ThePEG colour lines to HepMC colour indices.
Definition at line 63 of file HepMCConverter.h.
typedef Traits::EventT ThePEG::HepMCConverter< HepMCEventT, Traits >::GenEvent |
Forward typedefs from Traits class.
Definition at line 55 of file HepMCConverter.h.
typedef Traits::ParticleT ThePEG::HepMCConverter< HepMCEventT, Traits >::GenParticle |
Forward typedefs from Traits class.
Definition at line 53 of file HepMCConverter.h.
typedef Traits::VertexT ThePEG::HepMCConverter< HepMCEventT, Traits >::GenVertex |
Forward typedefs from Traits class.
Definition at line 57 of file HepMCConverter.h.
typedef map<const Vertex *, GenVertex*> ThePEG::HepMCConverter< HepMCEventT, Traits >::GenVertexMap |
Map vertices to GenVertex
Definition at line 67 of file HepMCConverter.h.
typedef map<tcPPtr,GenParticle*> ThePEG::HepMCConverter< HepMCEventT, Traits >::ParticleMap |
Map ThePEG particles to HepMC particles.
Definition at line 61 of file HepMCConverter.h.
typedef Traits::PdfInfoT ThePEG::HepMCConverter< HepMCEventT, Traits >::PdfInfo |
Forward typedefs from Traits class.
Definition at line 59 of file HepMCConverter.h.
typedef map<tcPPtr,Vertex*> ThePEG::HepMCConverter< HepMCEventT, Traits >::VertexMap |
Map ThePEG particles to vertices.
Definition at line 65 of file HepMCConverter.h.
|
private |
The proper constructors are private. The class is only instantiated within the convert method.
Definition at line 65 of file HepMCConverter.cc.
References ThePEG::HepMCConverter< HepMCEventT, Traits >::geneve, and ThePEG::HepMCConverter< HepMCEventT, Traits >::init().
|
private |
The proper constructors are private. The class is only instantiated within the convert method.
Definition at line 76 of file HepMCConverter.cc.
References ThePEG::HepMCConverter< HepMCEventT, Traits >::geneve, and ThePEG::HepMCConverter< HepMCEventT, Traits >::init().
|
private |
Default constructor is unimplemented and private and should never be used.
|
private |
Copy constructor is unimplemented and private and should never be used.
|
static |
Convert a ThePEG::Event to a HepMC::GenEvent. The caller is responsible for deleting the constructed GenEvent object. If nocopies is true, only final copies of particles connected with Particle::previous() and Particle::next() will be entered in the HepMC::GenEvent. In the GenEvent object, the energy/momentum variables will be in units of eunit and lengths variables in units of lunit.
Definition at line 43 of file HepMCConverter.cc.
References ThePEG::HepMCConverter< HepMCEventT, Traits >::geneve.
Referenced by ThePEGInterface::convert().
|
static |
Convert a ThePEG::Event to a HepMC::GenEvent. The caller supplies a GenEvent object, gev, which will be filled. If nocopies is true, only final copies of particles connected with Particle::previous() and Particle::next() will be entered in the HepMC::GenEvent. In the GenEvent object, the energy/momentum variables will be in units of eunit and lengths variables in units of lunit.
Definition at line 58 of file HepMCConverter.cc.
|
static |
Convert a ThePEG::Event to a HepMC::GenEvent. The caller supplies a GenEvent object, gev, which will be filled. If nocopies is true, only final copies of particles connected with Particle::previous() and Particle::next() will be entered in the HepMC::GenEvent. In the GenEvent object, the energy/momentum variables will be in units of eunit and lengths variables in units of lunit.
Definition at line 50 of file HepMCConverter.cc.
|
private |
Create a GenParticle from a ThePEG Particle.
Definition at line 225 of file HepMCConverter.cc.
References ntuplemaker::status, and relval_parameters_module::step.
|
private |
Create a GenVertex from a temporary Vertex.
Definition at line 268 of file HepMCConverter.cc.
References ThePEG::HepMCConverter< HepMCEventT, Traits >::Vertex::in, ThePEG::HepMCConverter< HepMCEventT, Traits >::Vertex::out, and AlCaHLTBitMon_ParallelJobs::p.
|
private |
Common init function used by the constructors.
Definition at line 93 of file HepMCConverter.cc.
References cond::ecalcond::all, GeV, i, join(), prof2calltree::l, MeV, N, AlCaHLTBitMon_ParallelJobs::p, createTree::pp, and HLT_25ns14e33_v1_cff::vertices.
Referenced by ThePEG::HepMCConverter< HepMCEventT, Traits >::HepMCConverter().
|
private |
Join the decay vertex of the parent with the decay vertex of the child.
Definition at line 247 of file HepMCConverter.cc.
References class-composition::child, TauDecayModes::dec, ThePEG::HepMCConverter< HepMCEventT, Traits >::Vertex::in, ThePEG::HepMCConverter< HepMCEventT, Traits >::Vertex::out, and dbtoconf::parent.
|
private |
Assignment is unimplemented and private and should never be used.
|
private |
Create and set a PdfInfo object for the event
Definition at line 297 of file HepMCConverter.cc.
References pileupReCalc_HLTpaths::scale, and mathSSE::sqrt().
|
private |
Sort vertices topologically
Definition at line 322 of file HepMCConverter.cc.
References getDQMSummary::iter, parents, std::swap(), and class-composition::visited.
|
private |
The mapping of particles to their decy vertices.
Definition at line 203 of file HepMCConverter.h.
|
private |
The primary event handler
Definition at line 223 of file HepMCConverter.h.
|
private |
The energy unit to be used in the GenEvent.
Definition at line 213 of file HepMCConverter.h.
|
private |
The translation table between ThePEG ColourLine objects and HepMC Flow indices.
Definition at line 188 of file HepMCConverter.h.
|
private |
The constructed GenEvent.
Definition at line 176 of file HepMCConverter.h.
Referenced by ThePEG::HepMCConverter< HepMCEventT, Traits >::convert(), and ThePEG::HepMCConverter< HepMCEventT, Traits >::HepMCConverter().
|
private |
The length unit to be used in the GenEvent.
Definition at line 218 of file HepMCConverter.h.
|
private |
The translation table between the ThePEG particles and the GenParticles.
Definition at line 182 of file HepMCConverter.h.
|
private |
The mapping of particles to their production vertices.
Definition at line 198 of file HepMCConverter.h.
|
private |
All temporary vertices created.
Definition at line 193 of file HepMCConverter.h.
|
private |
The mapping between temporary vertices and the created GenVertex Objects.
Definition at line 208 of file HepMCConverter.h.