CMS 3D CMS Logo

ShallowDigisProducer.h
Go to the documentation of this file.
1 #ifndef SHALLOW_DIGIS_PRODUCER
2 #define SHALLOW_DIGIS_PRODUCER
3 
8 class SiStripNoises;
9 
11 
12  public:
13 
14  explicit ShallowDigisProducer(const edm::ParameterSet&);
15 
16  private:
17  struct products {
18  std::unique_ptr<std::vector<unsigned> > id;
19  std::unique_ptr<std::vector<unsigned> > subdet;
20  std::unique_ptr<std::vector<unsigned> > strip;
21  std::unique_ptr<std::vector<unsigned> > adc;
22  std::unique_ptr<std::vector<float> > noise;
24  : id(new std::vector<unsigned>()),
25  subdet(new std::vector<unsigned>()),
26  strip(new std::vector<unsigned>()),
27  adc(new std::vector<unsigned>()),
28  noise(new std::vector<float>()) {}
29  };
30  std::vector<edm::InputTag> inputTags;
32 
33  void produce(edm::Event&, const edm::EventSetup&) override;
34  template<class T> bool findInput(edm::Handle<T>&, const edm::Event&);
35  template<class T> void recordDigis(const T &, products&);
36  void insert(products&, edm::Event&);
37 
38 };
39 
40 #endif
edm::ESHandle< SiStripNoises > noiseHandle
std::unique_ptr< std::vector< float > > noise
std::vector< edm::InputTag > inputTags
std::unique_ptr< std::vector< unsigned > > strip
void insert(products &, edm::Event &)
ShallowDigisProducer(const edm::ParameterSet &)
void recordDigis(const T &, products &)
std::unique_ptr< std::vector< unsigned > > id
std::unique_ptr< std::vector< unsigned > > adc
bool findInput(edm::Handle< T > &, const edm::Event &)
void produce(edm::Event &, const edm::EventSetup &) override
long double T
std::unique_ptr< std::vector< unsigned > > subdet