CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
EcalFenixPeakFinder.cc
Go to the documentation of this file.
2 
3 EcalFenixPeakFinder::EcalFenixPeakFinder() : inputsAlreadyIn_(0) {}
4 
6 
8  if (inputsAlreadyIn_ < 3) {
11  } else {
12  for (int i = 0; i < 2; i++)
13  buffer_[i] = buffer_[i + 1];
14  buffer_[2] = input;
15  }
16  return 1;
17 }
18 
20  if (inputsAlreadyIn_ < 3)
21  return 0;
22  if (buffer_[1] > buffer_[0] && buffer_[1] > buffer_[2])
23  return 1;
24  else
25  return 0;
26 }
27 
28 std::vector<int> EcalFenixPeakFinder::process(std::vector<int> &filtout, std::vector<int> &output) {
29  // FIXME: 3
30  inputsAlreadyIn_ = 0;
31  for (unsigned int i = 0; i < 3; i++)
32  buffer_[i] = 0;
33 
34  // std::vector<int> output;
35 
36  // attention, we have to shift by one, because the peak is found one too late
37  for (unsigned int i = 0; i < filtout.size(); i++) {
38  setInput(filtout[i]);
39  if (i > 0) {
40  // int outone = process();
41  // output.push_back(outone);
42  output[i - 1] = process();
43  }
44  }
45  // output.resize(filtout.size());
46 
47  return output;
48 }
static std::string const input
Definition: EdmProvDump.cc:47