Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-05-06 00:35:32

0001 #ifndef Gen_TauolaInterface_TauSpinnerFilter_H
0002 #define Gen_TauolaInterface_TauSpinnerFilter_H
0003 
0004 // I. M. Nugent
0005 // Filter on TauSpinner polarization weights to make unweighted polarized MC
0006 
0007 // system include files
0008 #include <memory>
0009 
0010 // user include files
0011 #include "FWCore/Framework/interface/Frameworkfwd.h"
0012 #include "FWCore/Framework/interface/stream/EDFilter.h"
0013 
0014 #include "FWCore/Framework/interface/Event.h"
0015 #include "FWCore/Framework/interface/Run.h"
0016 #include "FWCore/Framework/interface/EventSetup.h"
0017 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0018 #include "FWCore/Framework/interface/LuminosityBlock.h"
0019 
0020 #include "CLHEP/Random/RandomEngine.h"
0021 
0022 class TauSpinnerFilter : public edm::stream::EDFilter<> {
0023 public:
0024   TauSpinnerFilter(const edm::ParameterSet&);
0025   ~TauSpinnerFilter() override{};
0026 
0027   bool filter(edm::Event& e, edm::EventSetup const& es) override;
0028   void setRandomEngine(CLHEP::HepRandomEngine* v) { fRandomEngine = v; }
0029 
0030 private:
0031   const edm::EDGetTokenT<double> WTToken_;
0032   CLHEP::HepRandomEngine* fRandomEngine;
0033   double ntaus_;
0034 };
0035 
0036 #endif