Phase2TrackerCablingESProducer

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#ifndef CalibTracker_SiStripESProducers_Phase2TrackerCablingESProducer_H
#define CalibTracker_SiStripESProducers_Phase2TrackerCablingESProducer_H

#include "FWCore/Framework/interface/ESProducer.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include <memory>

class Phase2TrackerCabling;
class Phase2TrackerCablingRcd;

class Phase2TrackerCablingESProducer : public edm::ESProducer {
public:
  Phase2TrackerCablingESProducer(const edm::ParameterSet&);
  Phase2TrackerCablingESProducer(const Phase2TrackerCablingESProducer&) = delete;
  const Phase2TrackerCablingESProducer& operator=(const Phase2TrackerCablingESProducer&) = delete;
  ~Phase2TrackerCablingESProducer() override;

  virtual std::unique_ptr<Phase2TrackerCabling> produce(const Phase2TrackerCablingRcd&);

private:
  virtual Phase2TrackerCabling* make(const Phase2TrackerCablingRcd&) = 0;
};

#endif  // CalibTracker_SiStripESProducers_Phase2TrackerCablingESProducer_H