File indexing completed on 2024-09-10 02:59:10
0001 #ifndef MixingWorkerBase_h
0002 #define MixingWorkerBase_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #include "FWCore/Framework/interface/Event.h"
0016 #include "FWCore/Framework/interface/Principal.h"
0017 #include "Mixing/Base/interface/PileUp.h"
0018 #include "DataFormats/Provenance/interface/EventID.h"
0019
0020 namespace edm {
0021 class MixingModule;
0022 class ModuleCallingContext;
0023 class EventSetup;
0024
0025
0026
0027
0028 class MixingWorkerBase {
0029 public:
0030
0031 MixingWorkerBase() {}
0032
0033
0034 virtual ~MixingWorkerBase();
0035
0036
0037 virtual bool checkSignal(const edm::Event &e) = 0;
0038 virtual void createnewEDProduct() = 0;
0039 virtual void addSignals(const edm::Event &e) = 0;
0040 virtual void addPileups(const edm::EventPrincipal &, ModuleCallingContext const *, unsigned int EventNr) = 0;
0041 virtual void setBcrOffset() = 0;
0042 virtual void setSourceOffset(const unsigned int s) = 0;
0043 virtual void setTof() = 0;
0044 virtual void put(edm::Event &e) = 0;
0045 virtual void reload(int minBunch, int maxBunch, int bunchSpace) {}
0046 };
0047 }
0048
0049 #endif