CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/CommonTools/UtilAlgos/interface/EventSelectorBase.h

Go to the documentation of this file.
00001 #ifndef CommonTools_UtilAlgos_EventSelectorBase_h
00002 #define CommonTools_UtilAlgos_EventSelectorBase_h
00003 
00016 #include "FWCore/Framework/interface/Event.h"
00017 #include "FWCore/Framework/interface/EventSetup.h"
00018 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00019 
00020 class EventSelectorBase
00021 {
00022  public:
00023   // constructor 
00024   explicit EventSelectorBase() {}
00025   
00026   // destructor
00027   virtual ~EventSelectorBase() {}
00028   
00029   // function implementing actual cut
00030   // ( return value = true  : event passes cut
00031   //                  false : event fails cut ) 
00032   virtual bool operator()(edm::Event&, const edm::EventSetup&) = 0;
00033 };
00034 
00035 #include "FWCore/PluginManager/interface/PluginFactory.h"
00036 
00037 typedef edmplugin::PluginFactory<EventSelectorBase* (const edm::ParameterSet&)> EventSelectorPluginFactory;
00038 
00039 #endif
00040