CMS 3D CMS Logo

HcalTBTDCUnpacker.h
Go to the documentation of this file.
1 #ifndef HCALTBTDCUNPACKER_H
2 #define HCALTBTDCUNPACKER_H 1
6 
7 namespace hcaltb {
13  public:
14  HcalTBTDCUnpacker(bool);
15  void unpack(const FEDRawData& raw, HcalTBEventPosition& pos, HcalTBTiming& timing) const;
16  void setCalib(const std::vector<std::vector<std::string> >& calibLines_);
17 
18  private:
19  struct Hit {
20  int channel;
21  double time;
22  };
23 
24  void unpackHits(const FEDRawData& raw, std::vector<Hit>& hits, HcalTBTiming& timing) const;
25  void reconstructWC(const std::vector<Hit>& hits, HcalTBEventPosition& pos) const;
26  void reconstructTiming(const std::vector<Hit>& hits, HcalTBTiming& timing) const;
27  // void setupWC(); // reads it from configuration file
28 
29  static const int PLANECOUNT = 16;
30  static const int WC_CHANNELIDS[PLANECOUNT * 3];
32  double b0, b1, mean, sigma;
33  } wc_[PLANECOUNT];
34 
36  double tdc_ped[161];
37  double tdc_convers[161];
38  FILE* dumpObs_;
39  };
40 
41 } // namespace hcaltb
42 
43 #endif
void reconstructTiming(const std::vector< Hit > &hits, HcalTBTiming &timing) const
void unpackHits(const FEDRawData &raw, std::vector< Hit > &hits, HcalTBTiming &timing) const
void setCalib(const std::vector< std::vector< std::string > > &calibLines_)
void unpack(const FEDRawData &raw, HcalTBEventPosition &pos, HcalTBTiming &timing) const
void reconstructWC(const std::vector< Hit > &hits, HcalTBEventPosition &pos) const
static const int WC_CHANNELIDS[PLANECOUNT *3]
struct hcaltb::HcalTBTDCUnpacker::WireChamberRecoData wc_[PLANECOUNT]