Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:19:02

0001 #ifndef MultiParticleInConeGunProducer_H
0002 #define MultiParticleInConeGunProducer_H
0003 
0004 /** \class MultiParticleInConeGunProducer
0005  *
0006  * Generates single particle gun in HepMC format
0007  * Jean-Roch Vlimant
0008  ***************************************/
0009 
0010 #include "IOMC/ParticleGuns/interface/BaseFlatGunProducer.h"
0011 
0012 namespace edm {
0013 
0014   class MultiParticleInConeGunProducer : public BaseFlatGunProducer {
0015   public:
0016     MultiParticleInConeGunProducer(const ParameterSet&);
0017     ~MultiParticleInConeGunProducer() override;
0018 
0019   private:
0020     void produce(Event& e, const EventSetup& es) override;
0021 
0022   protected:
0023     // data members
0024     double fMinPt;
0025     double fMaxPt;
0026 
0027     std::vector<int> fInConeIds;
0028     double fMinDeltaR;
0029     double fMaxDeltaR;
0030     double fMinMomRatio;
0031     double fMaxMomRatio;
0032 
0033     double fInConeMinEta;
0034     double fInConeMaxEta;
0035     double fInConeMinPhi;
0036     double fInConeMaxPhi;
0037     unsigned int fInConeMaxTry;
0038   };
0039 }  // namespace edm
0040 
0041 #endif