CMS 3D CMS Logo

SiStripZeroSuppression.h
Go to the documentation of this file.
1 #ifndef SiStripZeroSuppression_h
2 #define SiStripZeroSuppression_h
5 
12 
13 class SiStripDigi;
14 class SiStripRawDigi;
15 
17 {
18  public:
19 
21  void produce(edm::Event& , const edm::EventSetup& ) override;
22 
23  private:
24 
26 
27  void clearOutputs();
28  void putOutputs(edm::Event& evt, const std::string& tagName);
29 
32  void storeExtraOutput(uint32_t, int16_t);
34  edm::DetSet<SiStripRawDigi> formatRawDigis(uint32_t detId, const std::vector<int16_t>& rawDigis);
35  using medians_t = std::vector<std::pair<short,float>>;
36  void storeCMN(uint32_t, const medians_t&);
37  void storeBaseline(uint32_t, const medians_t&);
38  void storeBaselinePoints(uint32_t);
39 
40  std::unique_ptr<SiStripRawProcessingAlgorithms> algorithms;
41 
43  bool storeCM;
44  bool fixCM;
49 
52  std::vector<std::tuple<std::string,RawType,rawtoken_t>> rawInputs;
53  std::vector<std::tuple<std::string,zstoken_t>> hybridInputs;
54 
55  std::vector<edm::DetSet<SiStripDigi> > output_base;
56  std::vector<edm::DetSet<SiStripRawDigi> > output_base_raw;
57  std::vector< edm::DetSet<SiStripProcessedRawDigi> > output_apvcm;
58  std::vector< edm::DetSet<SiStripProcessedRawDigi> > output_baseline;
59  std::vector< edm::DetSet<SiStripDigi> > output_baseline_points;
60 };
61 #endif
std::vector< std::pair< short, float >> medians_t
std::vector< edm::DetSet< SiStripDigi > > output_base
void produce(edm::Event &, const edm::EventSetup &) override
std::vector< std::tuple< std::string, zstoken_t > > hybridInputs
std::vector< edm::DetSet< SiStripDigi > > output_baseline_points
void processRaw(const edm::DetSetVector< SiStripRawDigi > &input, RawType inType)
static std::string const input
Definition: EdmProvDump.cc:45
void storeExtraOutput(uint32_t, int16_t)
std::vector< edm::DetSet< SiStripProcessedRawDigi > > output_apvcm
std::unique_ptr< SiStripRawProcessingAlgorithms > algorithms
std::vector< edm::DetSet< SiStripProcessedRawDigi > > output_baseline
A Digi for the silicon strip detector, containing both strip and adc information, and suitable for st...
Definition: SiStripDigi.h:12
std::vector< std::tuple< std::string, RawType, rawtoken_t > > rawInputs
void storeBaseline(uint32_t, const medians_t &)
std::vector< edm::DetSet< SiStripRawDigi > > output_base_raw
void storeCMN(uint32_t, const medians_t &)
void processHybrid(const edm::DetSetVector< SiStripDigi > &input)
SiStripZeroSuppression(const edm::ParameterSet &)
edm::DetSet< SiStripRawDigi > formatRawDigis(const edm::DetSet< SiStripRawDigi > &rawDigis)
void putOutputs(edm::Event &evt, const std::string &tagName)
A Digi for the silicon strip detector, containing only adc information, and suitable for storing raw ...