#ifndef _GSignals #define _GSignals ////////////////////////////////////////////////////////////////////////// // // // GSignals // // // // Class dealing with clusters and timing of the GSignals // // // ////////////////////////////////////////////////////////////////////////// #include "TMath.h" #include "math.h" #include #include #include "TArray.h" #include "TArrayI.h" #include "TArrayF.h" #include "TString.h" #include #include "TH1.h" #include "Trap.h" #include "Elec.h" #include "TClonesArray.h" #include "TObjArray.h" #include "TRandom.h" class GSignals : public TObject { private: Int_t Num; // Number of points Float_t Noise; // Noise in mV Float_t MIPSignal; // MIP signal in mV TArrayF PeakTimes; // Peaking Times TArrayF Cuts; // Cluster cuts TClonesArray *sn; //Array of Signal/Noise Historgrams TClonesArray *csignal; //Array of Signal Histograms TClonesArray *csignalsn; //Array of Signal Histograms after SN cuts TClonesArray *csize; //Array of Cluster Sizes Histograms public: TRandom rnd; GSignals(); GSignals(Int_t, Float_t, Float_t,Float_t *, Float_t *); ~GSignals(); Int_t GetN() {return Num;}; Float_t GetMIP() {return MIPSignal;}; Float_t *GetPeakTimes() {return PeakTimes.GetArray();}; void GetHistogram(Int_t, TH1F *,char *); void DrawHistogram(Int_t ,char *,Char_t *); void AddEvent(Int_t, Int_t, Float_t *); Double_t FindLandauPeak(TF1 *); // Double_t GausLandConv(Double_t *, Double_t *); Float_t GetMax(TH1F *,Int_t=0 ); Double_t FitLG(Int_t, char *, Double_t *,Double_t *); void Clean(); ClassDef(GSignals,1) }; #endif