MarlinTPC  1.2.0
ChargeSignal.h
1 #ifndef CHARGESIGNAL_H
2 #define CHARGESIGNAL_H 1
3 
4 // stl
5 #include <string>
6 
7 // LCIO
8 #include <EVENT/LCGenericObject.h>
9 
10 namespace marlintpc {
11 
16 class ChargeSignal : public EVENT::LCGenericObject {
17 
18 public:
21  ChargeSignal(int, int, int);
22 
23 
26  int get_electron_count( void ) const;
27 
28 
31  void add_electron( const double );
32 
33 
36  int get_charge_id( void ) const;
37 
38 
41  int get_pad_id( void ) const;
42 
43 
46  int get_module_id( void ) const;
47 
48 
51  double get_time_variance( void ) const;
52 
53 
56  double get_mean_time( void ) const;
57 
58 
61  int getNInt() const;
62 
63 
66  int getNFloat() const;
67 
68 
71  int getNDouble() const;
72 
73 
76  int getIntVal( int ) const;
77 
78 
81  float getFloatVal( int ) const;
82 
83 
86  double getDoubleVal( int ) const;
87 
88 
91  bool isFixedSize() const;
92 
93 
96  const std::string getTypeName( void ) const;
97 
98 
101  const std::string getDataDescription( void ) const;
102 
103 protected:
104 
105 private:
106 
109  int _charge_id;
110 
111 
114  int _pad_id;
115 
116 
119  int _module_id;
120 
123  int _electron_count;
124 
125 
128  double _mean_time;
129 
130 
133  double _S;
134 
135 
138  void set_time_variance( const double );
139 
140 
143  void set_module_id( const int );
144 
145 
148  void set_mean_time( const double );
149 };
150 
151 } // namespace marlintpc
152 
153 #endif // CHARGESIGNAL_H
double get_time_variance(void) const
gets the variance in the time
Definition: ChargeSignal.cc:70
int getNFloat() const
returns the number of floats used
Definition: ChargeSignal.cc:101
const std::string getDataDescription(void) const
returns the type of data in the generic object
Definition: ChargeSignal.cc:169
int getNInt() const
returns the number of integers used
Definition: ChargeSignal.cc:93
int get_module_id(void) const
gets the module id of this charge signal
Definition: ChargeSignal.cc:62
int getNDouble() const
returns the number of doubles used
Definition: ChargeSignal.cc:109
ChargeSignal(int, int, int)
constructor
Definition: ChargeSignal.cc:12
int get_charge_id(void) const
gets the unique id of this charge signal
Definition: ChargeSignal.cc:45
double get_mean_time(void) const
gets the mean time of the signal
Definition: ChargeSignal.cc:85
bool isFixedSize() const
returns where or not the number of parameters change during runtime
Definition: ChargeSignal.cc:153
int get_pad_id(void) const
gets the pad id of this signal
Definition: ChargeSignal.cc:53
const std::string getTypeName(void) const
returns the typename of the class
Definition: ChargeSignal.cc:161
void add_electron(const double)
add an electron to the signal at a specified time
Definition: ChargeSignal.cc:24
double getDoubleVal(int) const
returns a double value at a given index
Definition: ChargeSignal.cc:140
float getFloatVal(int) const
returns a float value at a given index
Definition: ChargeSignal.cc:132
int get_electron_count(void) const
gets the number of electrons
Definition: ChargeSignal.cc:37
int getIntVal(int) const
returns an int value at a given index
Definition: ChargeSignal.cc:117
ChargeSignal : A parameterized signal on a pad.
Definition: ChargeSignal.h:16