/[PAMELA software]/calo/flight/CaloProfile/inc/CaloProfile.h
ViewVC logotype

Diff of /calo/flight/CaloProfile/inc/CaloProfile.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.6 by mocchiut, Tue Aug 11 14:23:08 2009 UTC revision 1.13 by mocchiut, Mon Sep 14 13:56:48 2009 UTC
# Line 5  Line 5 
5  #ifndef caloprofile_h  #ifndef caloprofile_h
6  #define caloprofile_h  #define caloprofile_h
7    
8    #define EMPTY -1
9    #define MAX 50
10    
11  #include <iostream>  #include <iostream>
12    #include <stdio.h>
13    #include <string.h>
14    #include <ctype.h>
15  #include <TTree.h>  #include <TTree.h>
16  #include <TFriendElement.h>  #include <TFriendElement.h>
17  #include <TChain.h>  #include <TChain.h>
# Line 23  Line 29 
29  #include <TSystemDirectory.h>  #include <TSystemDirectory.h>
30  #include <TSQLServer.h>  #include <TSQLServer.h>
31  #include <TF1.h>  #include <TF1.h>
32    #include <TGraphErrors.h>
33    #include <TMinuit.h>
34    
35  #include <PamLevel2.h>  #include <PamLevel2.h>
36    
37  using namespace std;  using namespace std;
38    
39    struct stack{
40        char data[MAX];
41        int top;
42    };
43    
44  /**  /**
45   *   *
46   */   */
# Line 45  class CaloLat : public TObject { Line 58  class CaloLat : public TObject {
58      UInt_t atime;      UInt_t atime;
59      //      //
60      Float_t estrip[2][22][96];      Float_t estrip[2][22][96];
61        TString suf;
62      //      //
63    
64   public:   public:
# Line 68  class CaloLat : public TObject { Line 82  class CaloLat : public TObject {
82      void Print();      void Print();
83      void Print(Option_t *option){Print();};      void Print(Option_t *option){Print();};
84      //      //
85      ClassDef(CaloLat,1);      void SetSuffix(TString suffix){ suf = suffix;};
86        //
87        ClassDef(CaloLat,2);
88  };  };
89    
90  /**  /**
# Line 107  class CaloLong : public TObject { Line 123  class CaloLong : public TObject {
123      Float_t etmax;      Float_t etmax;
124      Float_t asymm;      Float_t asymm;
125      Float_t X0pl;      Float_t X0pl;
126        Float_t defE0;
127        Float_t umax;
128        Float_t lmax;
129        TString sumax;
130        TString slmax;
131      Int_t fitresult;      Int_t fitresult;
132      //      //
133      Bool_t no18x;      Bool_t no18x;
# Line 115  class CaloLong : public TObject { Line 136  class CaloLong : public TObject {
136      Bool_t maskXO;      Bool_t maskXO;
137      Bool_t maskYO;      Bool_t maskYO;
138      //      //
139        Bool_t xyaverage;
140        //
141        Bool_t heavytail;
142        Float_t letmax;
143        Float_t lmipth;
144        //
145      Float_t eplane[2][22];      Float_t eplane[2][22];
146      //      //
147      CaloLevel2 *clp;      CaloLevel2 *clp;
148      //      //
149        Float_t Evaluate(TString s, Float_t tmax, Float_t X0pl ); // expression must be of the form "tmax+2.*X0pl", "5*tmax"."tmax+10","tmax-(4*tmax)+3.*X0pl"...
150        //
151        TString suf;
152    
153   public:   public:
154      //      //
# Line 131  class CaloLong : public TObject { Line 161  class CaloLong : public TObject {
161      void SetCaloLevel2Pointer(CaloLevel2 *cp){ clp = cp;};      void SetCaloLevel2Pointer(CaloLevel2 *cp){ clp = cp;};
162      //      //
163      Float_t Get_E0(){this->Fit(); return E0;};      Float_t Get_E0(){this->Fit(); return E0;};
164        Float_t Get_defE0(){this->Fit(); return defE0;};
165      Float_t Get_a(){this->Fit(); return a;};      Float_t Get_a(){this->Fit(); return a;};
166      Float_t Get_b(){this->Fit(); return b;};      Float_t Get_b(){this->Fit(); return b;};
167      Float_t Get_errE0(){this->Fit(); return errE0;};      Float_t Get_errE0(){this->Fit(); return errE0;};
# Line 143  class CaloLong : public TObject { Line 174  class CaloLong : public TObject {
174      Float_t Get_asymm(){this->Fit(); return asymm;};      Float_t Get_asymm(){this->Fit(); return asymm;};
175      Float_t Get_exptmax(){this->Process(); return etmax;};      Float_t Get_exptmax(){this->Process(); return etmax;};
176      Float_t Get_X0pl(){this->Process(); return X0pl;};      Float_t Get_X0pl(){this->Process(); return X0pl;};
177      Int_t Get_fitresult(){this->Fit(); return fitresult;};      //
178        Float_t Get_letmax(){ return letmax;};
179        Float_t Get_lmipth(){ return lmipth;};
180        Int_t Get_fitresult(){this->Fit(); return fitresult;};    
181      //      //
182      void ForceNextFit(){atime=0;fatime=0;};      void ForceNextFit(){atime=0;fatime=0;};
183      void Draw();      void Draw();
# Line 156  class CaloLong : public TObject { Line 190  class CaloLong : public TObject {
190      void SetDebug(Bool_t d){ debug=d; };      void SetDebug(Bool_t d){ debug=d; };
191      void UsePlane18X(){ no18x=false; };      void UsePlane18X(){ no18x=false; };
192      //      //
193        void UseAverage(){ xyaverage = true;};
194        void UseAllMeas(){ xyaverage = false;};
195        //
196      void MaskSection(TString);      void MaskSection(TString);
197      void UnMaskSection(TString);      void UnMaskSection(TString);
198      void UnMaskSections();      void UnMaskSections();
# Line 168  class CaloLong : public TObject { Line 205  class CaloLong : public TObject {
205      Int_t GetNoWcalo(){return NC;}; ///< Get the number of W planes used as calorimeter.      Int_t GetNoWcalo(){return NC;}; ///< Get the number of W planes used as calorimeter.
206      void SetEnergies(Float_t myene[][22]);      void SetEnergies(Float_t myene[][22]);
207      //      //
208        void SetLowerLimit(Float_t l){ lmax = l; };
209        void SetUpperLimit(Float_t u){ umax = u; };
210        void SetLowerLimit(TString sl){ slmax = sl; };// expression must be of the form "5*t"."t+10","t-(4*t)"... where t will be replaced by the fitted maximum (X0)
211        void SetUpperLimit(TString su){ sumax = su; };// expression must be of the form "5*t"."t+10","t-(4*t)"... where t will be replaced by the fitted maximum (X0)
212        //
213        void Setletmax(Float_t l){ letmax = l;};
214        void Setlmipth(Float_t l){ lmipth = l;};
215        void HeavyTail(Bool_t b){ heavytail=b;};
216        //
217        Float_t GetLowerLimit(){ return lmax;};
218        Float_t GetUpperLimit(){ return umax;};
219        //
220        void SetSuffix(TString suffix){ suf = suffix;};
221        //
222      void Clear();      void Clear();
223      void Clear(Option_t *option){Clear();};      void Clear(Option_t *option){Clear();};
224      void Delete();      void Delete();
# Line 177  class CaloLong : public TObject { Line 228  class CaloLong : public TObject {
228      void Print();      void Print();
229      void Print(Option_t *option){Print();};      void Print(Option_t *option){Print();};
230      //      //
231      ClassDef(CaloLong,2);      ClassDef(CaloLong,3);
232  };  };
233    
234  /**  /**
# Line 200  class Calo2D : public TObject { Line 251  class Calo2D : public TObject {
251      Int_t smax[23];      Int_t smax[23];
252      Int_t smay[23];      Int_t smay[23];
253      //      //
254        TString suf;
255    
256   public:   public:
257      //      //
# Line 218  class Calo2D : public TObject { Line 270  class Calo2D : public TObject {
270      void Delete();      void Delete();
271      void Delete(Option_t *option){Delete();};      void Delete(Option_t *option){Delete();};
272      //      //
273        void SetSuffix(TString suffix){ suf = suffix;};
274        //
275      void Process(); ///< Process data      void Process(); ///< Process data
276      void Print();      void Print();
277      void Print(Option_t *option){Print();};      void Print(Option_t *option){Print();};
278      //      //
279      ClassDef(Calo2D,1);      ClassDef(Calo2D,2);
280  };  };
281    
282  #endif  #endif

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.13

  ViewVC Help
Powered by ViewVC 1.1.23