SFrame 3.6
core/include/SCycleStatistics.h
Go to the documentation of this file.
00001 // Dear emacs, this is -*- c++ -*-
00002 // $Id: SCycleStatistics.h 191 2010-08-04 08:00:45Z krasznaa $
00003 /***************************************************************************
00004  * @Project: SFrame - ROOT-based analysis framework for ATLAS
00005  * @Package: Core
00006  *
00007  * @author Stefan Ask       <Stefan.Ask@cern.ch>           - Manchester
00008  * @author David Berge      <David.Berge@cern.ch>          - CERN
00009  * @author Johannes Haller  <Johannes.Haller@cern.ch>      - Hamburg
00010  * @author A. Krasznahorkay <Attila.Krasznahorkay@cern.ch> - CERN/Debrecen
00011  *
00012  ***************************************************************************/
00013 
00014 #ifndef SFRAME_CORE_SCycleStatistics_H
00015 #define SFRAME_CORE_SCycleStatistics_H
00016 
00017 // ROOT include(s):
00018 #include <TNamed.h>
00019 
00020 // Local include(s):
00021 #include "../include/SLogger.h"
00022 
00023 // Forward declaration(s):
00024 class TCollection;
00025 
00039 class SCycleStatistics : public TNamed {
00040 
00041 public:
00043    SCycleStatistics( const char* name = "", Long64_t procEvents = 0,
00044                      Long64_t skipEvents = 0 );
00045 
00047    Long64_t GetProcessedEvents() const;
00049    void SetProcessedEvents( Long64_t events );
00050 
00052    Long64_t GetSkippedEvents() const;
00054    void SetSkippedEvents( Long64_t events );
00055 
00057    Int_t Merge( TCollection* coll );
00059    virtual Int_t Write( const char* name = 0, Int_t option = 0,
00060                         Int_t bufsize = 0 ) const;
00062    virtual Int_t Write( const char* name = 0, Int_t option = 0,
00063                         Int_t bufsize = 0 );
00064 
00065 private:
00066    Long64_t m_processedEvents; 
00067    Long64_t m_skippedEvents;   
00068 
00069    mutable SLogger m_logger; 
00070 
00071 #ifndef DOXYGEN_IGNORE
00072    ClassDef( SCycleStatistics, 1 );
00073 #endif // DOXYGEN_IGNORE
00074 
00075 }; // class SCycleStatistics
00076 
00077 #endif // SFRAME_CORE_SCycleStatistics_H