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

FillPIDFromText.h

Go to the documentation of this file.
00001 
00002 // $Id: FillPIDFromText.h,v 1.1 2006/09/18 21:41:22 boehm Exp $
00003 //
00004 // FILL_IN: [Document your code!!]
00005 //
00006 // vahle@hep.ucl.ac.uk
00008 #ifndef FILLPIDFROMTEXT_H
00009 #define FILLPIDFROMTEXT_H
00010 #ifndef JOBCMODULE_H
00011 #include "JobControl/JobCModule.h"
00012 #endif
00013 #include <set>
00014 #include "NueAna/NuePIDHeader.h"
00015 
00016 class TxtEntry;
00017 
00018 
00019 class FillPIDFromText : public JobCModule
00020 {
00021 public:
00022   FillPIDFromText();
00023   ~FillPIDFromText();
00024 
00025 public:
00026   // Analysis and Reconstruction methods
00027   JobCResult Reco(MomNavigator* mom);
00028   virtual void BeginJob();
00029   void ReadTextFile();
00030 
00031   // Module configuration
00032   const Registry& DefaultConfig() const;
00033   void            Config(const Registry& r);
00034 
00035 
00036 private:
00037   int counter;
00038   string fTextFile;
00039   NuePIDHeader::Decider_t fDecider;
00040   std::set<TxtEntry> elist;
00041   // Module member data
00042   int kSelRes;
00043   int kSelFlav;
00044 
00045  
00046 
00047 };
00048 
00049 class TxtEntry
00050 {
00051 public:
00052    TxtEntry();
00053    TxtEntry(int r, int sbr, int s, int e);
00054    TxtEntry(int r, int sbr, int s, int e, int f, int rsn);
00055    TxtEntry(int r, int sbr, int s, int e, float l);
00056    ~TxtEntry();
00057    
00058    bool operator < (const TxtEntry &e2) const {
00059       if(run<e2.run) return true;
00060       if(run>e2.run) return false;
00061       if(subrun<e2.subrun) return true;
00062       if(subrun>e2.subrun) return false;
00063       if(snarl<e2.snarl) return true;
00064       if(snarl>e2.snarl) return false;      
00065       if(event<e2.event) return true;
00066       if(event>e2.event) return false;
00067       return false;
00068    }
00069 
00070    bool operator == (const TxtEntry &e2) const {
00071       if(run==e2.run&&subrun==e2.subrun&&snarl==e2.snarl&&event==e2.event) return true;
00072       return false;
00073    }
00074 
00075    int run;
00076    int subrun;
00077    int snarl;
00078    int event;
00079 
00080    int flav;
00081    int res;
00082    float like;
00083 };
00084 
00085 #endif // FILLPIDFROMTEXT_H
00086 

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