00001 // -*- C++ -*- 00002 // 00003 // Package: SecSourceAnalyzer 00004 // Class: SecSourceAnalyzer 00005 // 00008 // 00009 // Original Author: Emilia Lubenova Becheva 00010 // Created: Wed Apr 22 16:54:31 CEST 2009 00011 // $Id: SecSourceAnalyzer.h,v 1.4 2011/07/14 15:01:10 wsun Exp $ 00012 // 00013 // 00014 00015 #ifndef SecSourceAnalyzer_h 00016 #define SecSourceAnalyzer_h 00017 00018 // system include files 00019 #include <memory> 00020 00021 #include "boost/shared_ptr.hpp" 00022 00023 // user include files 00024 #include "FWCore/Framework/interface/Frameworkfwd.h" 00025 #include "FWCore/Framework/interface/EDAnalyzer.h" 00026 00027 #include "FWCore/Framework/interface/Event.h" 00028 #include "FWCore/Framework/interface/MakerMacros.h" 00029 00030 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00031 00032 #include "DataFormats/Provenance/interface/EventID.h" 00033 00034 #include "Mixing/Base/interface/PileUp.h" 00035 00036 00037 // 00038 // class declaration 00039 // 00040 namespace edm 00041 { 00042 class SecSourceAnalyzer : public edm::EDAnalyzer { 00043 public: 00044 00045 explicit SecSourceAnalyzer(const edm::ParameterSet&); 00046 ~SecSourceAnalyzer(); 00047 00048 virtual void getBranches(EventPrincipal const& ep); 00049 virtual void dummyFunction(EventPrincipal const& ep) {} 00050 00051 private: 00052 virtual void beginJob() ; 00053 virtual void analyze(const edm::Event&, const edm::EventSetup&); 00054 virtual void endJob() ; 00055 00056 // ----------member data --------------------------- 00057 int minBunch_; 00058 int maxBunch_; 00059 00060 bool dataStep2_; 00061 edm::InputTag label_; 00062 00063 std::vector<std::vector<edm::EventID> > vectorEventIDs_; 00064 00065 boost::shared_ptr<PileUp> input_; 00066 std::vector< float > TrueNumInteractions_[5]; 00067 00068 InputTag tag_; 00069 00070 }; 00071 }//edm 00072 #endif