Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

LIGainCurve.h

Go to the documentation of this file.
00001 #ifndef LIGainCurve_h
00002 #define LIGainCurve_h
00003 
00004 #include <TTree.h>
00005 #include <TCanvas.h>
00006 #include <TFile.h>
00007 #include <TH2.h>
00008 #include <TProfile.h>
00009 #include <TROOT.h>
00010 #include <TError.h>
00011 #include <TStyle.h>
00012 
00013 #include <stdio.h>
00014 #include <iostream>
00015 #include <math.h>
00016 #include <map>
00017 #include <string>
00018 
00019 #include <LILinResp.h>
00020 
00021 #include <MessageService/MsgService.h>
00022 
00023 class LIGainCurve {
00024 
00025   public :
00026     
00027   LIGainCurve();
00028   ~LIGainCurve();
00029 
00030   void    ExecuteMe(Int_t nentries = -1);
00031   Bool_t  LoadTreeLI();
00032   Bool_t  GetData(Int_t nentries = -1);
00033   Bool_t  ProcessData();
00034   void    PlotData();
00035 
00036   Int_t   EncryptMeKey(const Int_t crate,
00037                        const Int_t varc,
00038                        const Int_t vmm,
00039                        const Int_t vfb,
00040                        const Int_t va,
00041                        const Int_t channel);
00042 
00043   Int_t   EncryptMeKey(const Int_t crate,
00044                        const Int_t master,
00045                        const Int_t minder,
00046                        const Int_t menu);
00047 
00048 
00049   static void          CheckDBGain(const Bool_t answer)      {fCheckDB = answer;}
00050   static Bool_t        fCheckDB;
00051 
00052   //
00053   //Members:
00054   //
00055 
00056   TTree*          fInTree;
00057   TFile*          fInFile;
00058   std::string     fFileNameIn;
00059   std::string     fFileNameOut;
00060 
00061   TCanvas*        fplotFile_c;
00062 
00063   //Map of QRR keied by the channels information:
00064   std::map<Int_t,LILinResp*> mapLinResp;
00065 
00066   TProfile*  fResponseND_HG_p;
00067   TProfile*  fResponseFD_HG_p;
00068   TProfile*  fResponseND_LG_p;
00069   TProfile*  fResponseFD_LG_p;
00070 
00071   TProfile*  fResidualFDPMT_p;
00072   TProfile*  fResidualFD_p;
00073   TProfile*  fResidualND_p;
00074   TProfile*  fResidualFD300PMT_p;
00075   TProfile*  fResidualFD300_p;
00076   TProfile*  fResidualND300_p;
00077 
00078   TProfile*  fResidualFDADCPMT_p;
00079   TProfile*  fResidualFDADC_p;
00080   TProfile*  fResidualNDADC_p;
00081 
00082   TProfile*  fResponseND_LG1_p;
00083   TProfile*  fResponseFD_LG1_p;
00084   TProfile*  fResponseND_LG2_p;
00085   TProfile*  fResponseFD_LG2_p;
00086   TProfile*  fResponseND_LG3_p;
00087   TProfile*  fResponseFD_LG3_p;
00088   TProfile*  fResponseND_LG4_p;
00089   TProfile*  fResponseFD_LG4_p;
00090   TProfile*  fResponseND_LG5_p;
00091   TProfile*  fResponseFD_LG5_p;
00092   TProfile*  fResponseND_LG6_p;
00093   TProfile*  fResponseFD_LG6_p;
00094 
00095   TProfile*  fResponseND_HG1_p;
00096   TProfile*  fResponseFD_HG1_p;
00097   TProfile*  fResponseND_HG2_p;
00098   TProfile*  fResponseFD_HG2_p;
00099   TProfile*  fResponseND_HG3_p;
00100   TProfile*  fResponseFD_HG3_p;
00101   TProfile*  fResponseND_HG4_p;
00102   TProfile*  fResponseFD_HG4_p;
00103   TProfile*  fResponseND_HG5_p;
00104   TProfile*  fResponseFD_HG5_p;
00105   TProfile*  fResponseND_HG6_p;
00106   TProfile*  fResponseFD_HG6_p;
00107 
00108 
00109   TProfile*  fResVsGainND_p;
00110   TProfile*  fResVsGainFD_p;
00111 
00112   TH2*       fResponseND_HG_h;
00113   TH2*       fResponseFD_HG_h;
00114   TH2*       fResponseND_LG_h;
00115   TH2*       fResponseFD_LG_h;
00116   TH2*       fResidualND_h;
00117   TH2*       fResidualFD_h;
00118   TH2*       fResidualFDPMT_h;
00119 
00120   //TH1*  fResidualN_F_p;
00121   TProfile*  fResidualN_F_p;
00122   TH2F*      fResidualN_F_h;
00123 
00124   TH1F*      fSlopeFD_HG_h;
00125   TH1F*      fSlopeND_HG_h;
00126   TH1F*      fInterceptFD_HG_h;
00127   TH1F*      fInterceptND_HG_h;
00128 
00129   TH1F*      fSlopeFD_LG_h;
00130   TH1F*      fSlopeND_LG_h;
00131   TH1F*      fInterceptFD_LG_h;
00132   TH1F*      fInterceptND_LG_h;
00133 
00134 
00135   //LI TTrees variables
00136   //Int_t           ashtray;
00137   //Int_t           calibPoint;
00138   //Int_t           calibType;
00139   //Int_t           chAdd;
00140   Int_t           channel;
00141   Int_t           va;
00142   Int_t           correlatedHit;
00143   Int_t           crate;
00144   //Int_t           detectorType;
00145   Int_t           eastWest;
00146   Int_t           elecType;
00147   //Int_t           farLed;
00148   //Int_t           farPulserBox;
00149   Int_t           menu;
00150   //Int_t           inRack;
00151   Int_t           led;
00152   Int_t           master;
00153   Float_t         mean;
00154   Int_t           minder;
00155   Int_t           nearLed;
00156   Int_t           nearPulserBox;
00157   Int_t           numEntries;
00158   //Int_t           numericMuxBox;
00159   //Int_t           pe;
00160   //Int_t           period;
00161   Int_t           pinGain;
00162   //Int_t           pinInBox;
00163   //Int_t           pixel;
00164   Int_t           plane;
00165   Int_t           pulseHeight;
00166   Int_t           pulserBox;
00167   //Int_t           pulses;
00168   Int_t           pulseWidth;
00169   //Int_t           rackBay;
00170   //Int_t           rackLevel;
00171   Int_t           readoutType;
00172   Float_t         rms;
00173   //Int_t           runNumber;
00174   //Int_t           runNumberSub;
00175   //Int_t           runType;
00176   Int_t           strip;
00177   Int_t           stripEnd;
00178   //Int_t           summaryCounter;
00179   Int_t           timestamp;
00180   Int_t           varc;
00181   Int_t           vfb;
00182   Int_t           vmm;
00183 
00184 };
00185 
00186 #endif

Generated on Mon Feb 15 11:06:51 2010 for loon by  doxygen 1.3.9.1