ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/TreeMod/interface/AnaFwkMod.h
Revision: 1.8
Committed: Fri Jun 19 07:39:01 2009 UTC (15 years, 10 months ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_023, Mit_022a, Mit_022, Mit_020d, TMit_020d, Mit_020c, Mit_021, Mit_021pre2, Mit_021pre1, Mit_020b, Mit_020a, Mit_020, Mit_020pre1, Mit_018, Mit_017, Mit_017pre3, Mit_017pre2, Mit_017pre1, Mit_016, Mit_015b, Mit_015a, Mit_015, Mit_014e, Mit_014d, Mit_014c, Mit_014b, Mit_014a, Mit_014, Mit_014pre3, Mit_014pre2, Mit_014pre1, Mit_013d, Mit_013c, Mit_013b, Mit_013a, Mit_013, Mit_013pre1, Mit_012i, Mit_012h, Mit_012g, Mit_012f, Mit_012e, Mit_012d, Mit_012c, Mit_012b, Mit_012a, Mit_012, Mit_011a, Mit_011, Mit_010a, Mit_010
Changes since 1.7: +4 -1 lines
Log Message:
Allow to set scale of printouts.

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 loizides 1.8 // $Id: AnaFwkMod.h,v 1.7 2009/06/15 15:00:17 loizides Exp $
3 loizides 1.1 //
4     // AnaFwkMod
5     //
6     // This module collects interesting global information, like the overall number of processed
7     // events and puts this information into the OutputList.
8     //
9     // Authors: C.Loizides
10     //--------------------------------------------------------------------------------------------------
11    
12     #ifndef MITANA_TREEEMOD_ANAFWKMOD_H
13     #define MITANA_TREEEMOD_ANAFWKMOD_H
14    
15     #include "MitAna/TreeMod/interface/BaseMod.h"
16 loizides 1.7 #include "MitAna/DataTree/interface/EventHeaderCol.h"
17 loizides 1.1
18 loizides 1.4 class TTree;
19 loizides 1.1 class TH1D;
20     class TStopwatch;
21    
22     namespace mithep
23     {
24     class AnaFwkMod : public BaseMod
25     {
26     public:
27     AnaFwkMod(const char *name="AnaFwkMod",
28     const char *title="Analysis framework module");
29    
30 loizides 1.8 Long64_t GetPrintScale() const { return fPrintScale; }
31 loizides 1.6 Long64_t GetSkipNEvents() const { return fSkipNEvents; }
32 loizides 1.8 void SetPrintScale(UInt_t n) { fPrintScale = n; }
33 loizides 1.6 void SetSkipNEvents(Long64_t n) { fSkipNEvents = n; }
34    
35 loizides 1.1 protected:
36 loizides 1.6 void BeginRun();
37     Bool_t Notify();
38     void CopyAllEventHeaders();
39     void Process();
40     void SlaveBegin();
41     void SlaveTerminate();
42    
43 loizides 1.5 TString fAllHeadTreeName; //all events tree name
44     TString fAllHeadBrName; //all event headers branch name
45 loizides 1.6 Long64_t fSkipNEvents; //number of events to skip from beginning (def=0)
46 loizides 1.8 UInt_t fPrintScale; //scale of when to print event number/timings (def=100)
47 loizides 1.4 TStopwatch *fSWtotal; //!stop watch for overall timing
48     TStopwatch *fSWevent; //!stop watch per n events
49     EventHeaderArr fAllHeaders; //!pointer to array of all event headers
50     TTree *fAllHeadTree; //!all event headers tree in current file
51     EventHeader *fAllEventHeader; //!all event header
52     Bool_t fReload; //!reload tree after file changed
53 loizides 1.5 Int_t fCurEnt; //!curent entry in AllEvents tree
54     Int_t fNEventsSkimmed; //!number of skimmed events
55 loizides 1.6 Int_t fNEventsSkipped; //!number of skippeded events
56    
57 loizides 1.4 ClassDef(AnaFwkMod, 1) // Analysis framework module
58 loizides 1.1 };
59     }
60     #endif