Marlin  01.17.01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SimpleParticleFactory.h
Go to the documentation of this file.
1 #ifndef SimpleParticleFactory_h
2 #define SimpleParticleFactory_h 1
3 
4 #include "marlin/MarlinConfig.h"
5 
6 #ifdef MARLIN_CLHEP // only if CLHEP is available !
7 
11 
12 
13 namespace marlin {
14 
23  class SimpleParticleFactory : public IRecoParticleFactory {
24 
25  public:
26 
27  SimpleParticleFactory() ;
28 
29 
31  virtual ~SimpleParticleFactory() {}
32 
33 
36  virtual lcio::ReconstructedParticle* createReconstructedParticle( const lcio::MCParticle* mcp ) ;
37 
38 
41  virtual void registerIFourVectorSmearer( IFourVectorSmearer* sm , FastMCParticleType type ) ;
42 
43 
46  virtual FastMCParticleType getParticleType( const lcio::MCParticle* mcp ) ;
47 
48 
49 // /** Helper function to determine the charge from the PDG (charge is missing from stdhep files)
50 // */
51 // virtual float getCharge( int pdgCode ) ;
52 
53 
56  virtual void setMomentumCut( double mCut ) ;
57 
58  protected:
59 
61  double _momentumCut ;
62 
63  };
64 
65 }
66 
67 #endif // MARLIN_CLHEP
68 
69 #endif // SimpleParticleFactory_h
FastMCParticleType
Enumeration that defines integer constants for various particle types used in the fast Monte Carlo...
STL class.