SFrame 3.6
|
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