Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

ReComputeMET.hpp

Go to the documentation of this file.
00001 #ifndef CAFUTIL_RECOMPUTEMET_HPP__
00002 #define CAFUTIL_RECOMPUTEMET_HPP__
00003 
00004 
00005 #include <string>
00006 #include <stdexcept>
00007 
00008 #include "cafe/Event.hpp"
00009 #include "cafe/Processor.hpp"
00010 #include "cafe/Config.hpp"
00011 #include "cafe/Variables.hpp"
00012 
00013 #include "tmb_tree/TMBMet.hpp"
00014 
00015 #include "TFile.h"
00016 #include "TTree.h"
00017 #include "TBranch.h"
00018 
00019 namespace caf_util {
00020 
00061 class ReComputeMET : public cafe::Processor
00062   {
00063   public :
00064   ReComputeMET(const char *name);
00065   ~ReComputeMET(){;};  
00066   bool processEvent(cafe::Event& event);
00067   void inputFileOpened(TFile *file);
00068   void inputFileClosing(TFile *file);
00069     
00070   enum JES {NotShifted, ShiftedPos, ShiftedNeg} ;
00071   void setJES(const JES& jes) {_jes = jes;} 
00072 
00073   private :
00074 
00075   std::string  _fromBranch;
00076   std::string  _toBranch;
00077   std::string  _treeName;
00078   TTree        *_tree;
00079   TBranch      *_branch;
00080   TMBMet       *_result;
00081   
00082   cafe::Variables  _vars, _mcvars;
00083 
00084   std::string _muonBranch;
00085   std::string _electronBranch;
00086   std::string _jetBranch;
00087   bool _debug;
00088   bool _useDefaultMuon;
00089   bool _useDefaultElectron;
00090   bool _useDefaultJet;
00091 
00092   std::vector<std::string> _valgo;
00093 
00094   JES _jes ;
00095 
00096   public:
00097   ClassDef(ReComputeMET, 0);
00098   };
00099 }
00100 
00101 #endif // CAFUTIL_RECOMPUTEMET_HPP__

Generated on Tue Mar 28 10:13:04 2006 for CAF by doxygen 1.3.4