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

MadPIDAnalysis.h

Go to the documentation of this file.
00001 #ifndef madpidanalysis_h
00002 #define madpidanalysis_h
00003 #include "Mad/MadAnalysis.h"
00004 #include "Mad/AnnInputBlock.h"
00005 #include "Mad/MadAbID.h"
00006 #include "Registry/Registry.h"
00007 #include "PhysicsNtuple/Store/Interface.h"
00008 #include "DataUtil/EnergyCorrections.h"
00009 //#include "Conventions/ReleaseType.h"
00010 
00011 using namespace std;
00012 
00013 class MadPIDAnalysis : public MadAnalysis
00014 {
00015 
00016  protected:
00017   
00018   Bool_t PassTruthSignal(Int_t event=0);
00019   Bool_t PassAnalysisCuts(Int_t event=0);
00020   Float_t PID(Int_t event=0,Int_t method=0);
00021   Bool_t PassBasicCuts(Int_t event=0);
00022   Bool_t PassFid(Int_t event=0);
00023   Bool_t PassFidND(Int_t event=0);
00024   Bool_t PassFidNew(Int_t event=0);
00025   Bool_t PassFidNewN(Int_t event=0);  // NEW !!
00026   Float_t RecoAnalysisEnergy(Int_t event=0);
00027   Bool_t PassTimingCuts(Double_t timediff);
00028   
00029  //ANN PID
00030   AnnInputBlock AnnVar(Int_t event=0);
00031   Double_t GetAnnPid(AnnInputBlock anninput,Int_t det, Int_t tar, Int_t fid, Int_t prior, Bool_t first_ann);
00032   Double_t Sigmoid(Double_t x);
00033   // END OF ANN PID
00034   Float_t SingleTimeFrame(Int_t snarlentry,Int_t nentries); 
00035    
00036   TFile *fLikeliFile; //pointer to PID file 
00037   TH1F *fLikeliHist[6];
00038 
00039   MadAbID andy_id;
00040 
00041   Anp::Interface ro_interface;
00042   Registry ro_registry;
00043 
00044  private :
00045 
00046   Double_t Ann_weight_vector[226];
00047   Float_t potall;
00048   Float_t potcut;
00049 
00050  public:
00051  
00052   MadPIDAnalysis(TChain *chainSR=0,TChain *chainMC=0,
00053                 TChain *chainTH=0,TChain *chainEM=0);
00054   MadPIDAnalysis(JobC *,string,int); 
00055   ~MadPIDAnalysis();
00056   
00057   //MY METHODS:
00058 
00059   void MakeMyFile(std::string,int,int);
00060   void MakeAbIDFile(std::string);
00061 
00062   void ReadPIDFile(std::string);
00063   void ReadAbPIDFile(std::string);
00064   void ConfigureRoID(std::string, std::string);
00065   void CreatePAN(std::string, Int_t,Int_t, EnergyCorrections::WhichCorrection_t);
00066 
00067   
00068   static bool InFidVol(const Detector::Detector_t& det,
00069                        const Float_t& x, const Float_t& y, 
00070                        const Float_t& z);
00071 
00072 };
00073 #endif // #ifdef madpidanalysis_h

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