Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTower_Prototype3.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTower_Prototype3.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef PROTOTYPE3_RAWTOWERPROTOTYPE3_H
4 #define PROTOTYPE3_RAWTOWERPROTOTYPE3_H
5 
6 #include "PROTOTYPE3_FEM.h"
7 
8 #include <calobase/RawTower.h>
9 
10 #include <calobase/RawTowerDefs.h>
11 
12 #include <iostream> // for cout, ostream
13 
15 {
16  public:
19  RawTower_Prototype3(const unsigned int icol, const unsigned int irow);
21  const unsigned int ieta, const unsigned int iphi);
22 
23  virtual ~RawTower_Prototype3() {}
24 
25  void Reset() override;
26  int isValid() const override;
27  void identify(std::ostream &os = std::cout) const override;
28 
29  void set_id(RawTowerDefs::keytype id) override { towerid = id; }
30  RawTowerDefs::keytype get_id() const override { return towerid; }
31  int get_bineta() const override { return RawTowerDefs::decode_index1(towerid); }
32  int get_binphi() const override { return RawTowerDefs::decode_index2(towerid); }
33  int get_column() const override { return RawTowerDefs::decode_index1(towerid); }
34  int get_row() const override { return RawTowerDefs::decode_index2(towerid); }
35  double get_energy() const override { return energy; }
36  void set_energy(const double e) override { energy = e; }
37  float get_time() const override { return time; }
38  void set_time(const float t) override { time = t; }
39 
40  //---Raw data
41  // access------------------------------------------------------------
42 
43  enum
44  {
46  };
47  typedef float signal_type;
48 
49  void set_signal_samples(int i, signal_type sig);
50  signal_type get_signal_samples(int i) const;
52  int get_HBD_channel_number() const { return HBD_channel; }
53 
54  //---Fits------------------------------------------------------------
55 
56  double get_energy_power_law_exp(int verbosity = 0);
57 
58  protected:
60 
63  double energy;
66  float time;
67 
68  // Signal samples from DATA
71 
72  ClassDefOverride(RawTower_Prototype3, 3)
73 };
74 
75 #endif