--- UserCode/MitProd/TreeFiller/interface/FillMitTree.h 2008/07/30 16:39:57 1.7 +++ UserCode/MitProd/TreeFiller/interface/FillMitTree.h 2010/02/11 14:55:26 1.18 @@ -1,5 +1,5 @@ //-------------------------------------------------------------------------------------------------- -// $Id: FillMitTree.h,v 1.7 2008/07/30 16:39:57 loizides Exp $ +// $Id: FillMitTree.h,v 1.18 2010/02/11 14:55:26 yilmaz Exp $ // // FillMitTree // @@ -11,18 +11,17 @@ // Authors: C.Paus //-------------------------------------------------------------------------------------------------- -#ifndef TREEFILLER_FILLMITTREE_H -#define TREEFILLER_FILLMITTREE_H +#ifndef MITPROD_TREEFILLER_FILLMITTREE_H +#define MITPROD_TREEFILLER_FILLMITTREE_H #include "FWCore/Framework/interface/EDAnalyzer.h" -#include "FWCore/Framework/interface/Event.h" -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "MitProd/ObjectService/interface/ObjectService.h" namespace mithep { + class BranchTable; class BaseFiller; + class TreeWriter; + class ObjectService; class FillMitTree : public edm::EDAnalyzer { @@ -30,17 +29,23 @@ namespace mithep FillMitTree(const edm::ParameterSet &cfg); ~FillMitTree(); - void analyze (const edm::Event &e, const edm::EventSetup &es); - void beginJob(const edm::EventSetup &es); - void endJob(); + void beginRun(edm::Run const &, edm::EventSetup const&); + void analyze(const edm::Event &e, const edm::EventSetup &es); + void beginJob(); + void endJob(); - static ObjectService *os() { return os_; } + static ObjectService *os() { return os_; } protected: - bool configure(const edm::ParameterSet &cfg); + bool addActiveFiller(BaseFiller *bf); + bool configure(const edm::ParameterSet &cfg); + bool configureTreeWriter(const edm::ParameterSet &cfg); std::vector fillers_; //list of active fillers bool defactive_; //default activity flag for fillers + BranchTable *brtable_; //branch dependency table + int acfnumber_; //keep track of active file number + TreeWriter *tws_; //pointer to tree writer static ObjectService *os_; //object service (set in beginJob) }; }