Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-15 09:29:34

0001 #ifndef HGCROC_H
0002 #define HGCROC_H
0003 
0004 #include <vector>
0005 #include "Tile.h"
0006 
0007 class Hgcroc: public Tile {
0008 
0009  public:
0010   Hgcroc():Tile(ReadOut::Type::Hgcroc){}
0011   ~Hgcroc(){}
0012   std::vector<int> GetADCWaveform(void) const;
0013   std::vector<int> GetTOAWaveform(void) const;
0014   std::vector<int> GetTOTWaveform(void) const;
0015   int GetFirstTOASample (void);
0016   int GetFirstSampleAboveTh(void);
0017   int GetMaxSampleADC (void);
0018   int GetNsample(void) const ;
0019   double GetTOT(void) const;
0020   double GetTOA(void) const;
0021   int GetPedestal(void) const;
0022 
0023   void SetADCWaveform(std::vector<int>);
0024   void AppendWaveformADC(int);
0025   void ResetADCWaveformPoint(int, int);
0026   
0027   void SetTOAWaveform(std::vector<int>);
0028   void AppendWaveformTOA(int);
0029   void ResetTOAWaveformPoint(int, int);
0030   
0031   void SetTOTWaveform(std::vector<int>);
0032   void AppendWaveformTOT(int);
0033   void ResetTOTWaveformPoint(int, int);
0034 
0035   
0036   void SetNsample(int);
0037   void SetTOT(double);
0038   void SetTOA(double);
0039   void SetPedestal(int);
0040 
0041   double GetIntegratedADC() {return integrated_adc;};  // Value from just ADC
0042   double GetIntegratedTOT() {return integrated_tot;};  // Value from just TOT
0043   double GetIntegratedValue() {return integrated_value;};  // Combined ADC and TOT
0044 
0045   void SetIntegratedADC(double val) { integrated_adc = val; }
0046   void SetIntegratedTOT(double val) { integrated_tot = val; }
0047   void SetIntegratedValue(double val) { integrated_value = val; }
0048 
0049   void PrintWaveFormDebugInfo( double, double, double);
0050  protected:
0051   int Nsample;
0052   std::vector<int> adc_waveform;
0053   std::vector<int> toa_waveform;
0054   std::vector<int> tot_waveform;
0055   int TOA;
0056   int TOT;
0057   int pedestal;
0058 
0059   // "finalized" values
0060   double integrated_adc = 0.;
0061   double integrated_tot = 0.;
0062   double integrated_value = 0.;
0063   
0064  private:
0065 
0066   ClassDef(Hgcroc,1)
0067 };
0068 
0069 
0070 #endif