1 #ifndef SimpleParticleFactory_h
2 #define SimpleParticleFactory_h 1
4 #include "marlin/MarlinConfig.h"
6 #ifdef MARLIN_CLHEP // only if CLHEP is available !
8 #include "marlin/IRecoParticleFactory.h"
9 #include "marlin/IFourVectorSmearer.h"
10 #include "marlin/FastMCParticleType.h"
60 std::vector<IFourVectorSmearer*> _smearingVec ;
67 #endif // MARLIN_CLHEP
69 #endif // SimpleParticleFactory_h
virtual void setMomentumCut(double mCut)
Helper function to determine the charge from the PDG (charge is missing from stdhep files) ...
Definition: SimpleParticleFactory.cc:39
Interface for smearing of four vectors - based on CLHEP::HepLorentzVector.
Definition: IFourVectorSmearer.h:23
Implementation of IRecoParticleFactory that implements the default behaviour as described in SimpleFa...
Definition: SimpleParticleFactory.h:23
virtual lcio::ReconstructedParticle * createReconstructedParticle(const lcio::MCParticle *mcp)
The actual factory method that creates a new ReconstructedParticle.
Definition: SimpleParticleFactory.cc:99
virtual void registerIFourVectorSmearer(IFourVectorSmearer *sm, FastMCParticleType type)
Register a particle four vector smearer for the given type.
Definition: SimpleParticleFactory.cc:43
virtual ~SimpleParticleFactory()
Virtual d'tor.
Definition: SimpleParticleFactory.h:31
FastMCParticleType
Enumeration that defines integer constants for various particle types used in the fast Monte Carlo...
Definition: FastMCParticleType.h:15
virtual FastMCParticleType getParticleType(const lcio::MCParticle *mcp)
Returns the type of the MCParticle.
Definition: SimpleParticleFactory.cc:50
Interface for a factory class that creates a ReconstructedParticle from an MCParticle.
Definition: IRecoParticleFactory.h:19