--- UserCode/kiesel/TreeWriter/treeWriter.h 2013/04/09 07:28:02 1.1 +++ UserCode/kiesel/TreeWriter/treeWriter.h 2013/04/24 13:24:30 1.9 @@ -1,46 +1,64 @@ #include #include +#include +#include "TSystem.h" #include "TFile.h" #include "TTree.h" #include "TChain.h" -#include "TString.h" +#include "TH1F.h" #include "SusyEvent.h" #include "TreeObjects.h" class TreeWriter { public : - TreeWriter(TString inputName, TString outputName ); + TreeWriter(std::string inputName, std::string outputName, int loggingVerbosity_); + TreeWriter(TChain* inputName, std::string outputName, int loggingVerbosity_); + void Init( std::string outputName, int loggingVerbosity_ ); virtual ~TreeWriter(); virtual void Loop(); void SetProcessNEvents(int nEvents) { processNEvents = nEvents; } - void SetReportEvents(int nEvents) { reportEvery = nEvents; } - void SetLoggingVerbosity(int logVerb) { loggingVerbosity = logVerb; } - void DontSkimEvents(){ skim = false; } - - TChain *inputTree; - susy::Event *event; - - TFile *outFile; - TTree *tree; - - float getPtFromMatchedJet( susy::Photon, susy::Event ); - float deltaR( TLorentzVector, TLorentzVector ); + void SetReportEvents(unsigned int nEvents) { reportEvery = nEvents; } + void SetLoggingVerbosity(unsigned int logVerb) { loggingVerbosity = logVerb; } + void SkimEvents(bool skim_){ skim = skim_; } + void PileUpWeightFile( std::string pileupFileName ); + + TChain* inputTree; + susy::Event* event; + + TFile* outFile; + TTree* tree; + TH1F* eventNumbers; private: int processNEvents; // number of events to be processed - int reportEvery; - int loggingVerbosity; - bool skim; + unsigned int reportEvery; + bool skim; // true by default. eg. nJets, jet.pt, etc + unsigned int loggingVerbosity; + // 0: no output + // 1: only steps are shown + // 2: object multiplicity shown + // 3: detailed object info shown + + // important dataset information + TH1F* pileupHisto; // variables which will be stored in the tree std::vector photon; std::vector jet; + std::vector electron; + std::vector muon; + std::vector genElectron; + std::vector genPhoton; + float met; + float met_phi; + float type1met; + float type1met_phi; float ht; int nVertex; - int nElectron; + float pu_weight; };