/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Reconstruction/TrkReco/TrkReco-00-08-59-patch4-slc6tag/TrkReco/TUpdater.h

Go to the documentation of this file.
00001 //-----------------------------------------------------------------------------
00002 // $Id: TUpdater.h,v 1.4 2010/03/31 09:58:59 liucy Exp $
00003 //-----------------------------------------------------------------------------
00004 // Filename : TUpdater.h
00005 // Section  : Tracking
00006 // Owner    : Yoshi Iwasaki
00007 // Email    : yoshihito.iwasaki@kek.jp
00008 //-----------------------------------------------------------------------------
00009 // Description : A class to handle update timing of static objects of tracking.
00010 //               See http://bsunsrv1.kek.jp/~yiwasaki/tracking/
00011 //-----------------------------------------------------------------------------
00012 
00013 #ifndef TUpdater_FLAG_
00014 #define TUpdater_FLAG_
00015 
00016 #ifdef TRKRECO_DEBUG_DETAIL
00017 #ifndef TRKRECO_DEBUG
00018 #define TRKRECO_DEBUG
00019 #endif
00020 #endif
00021 
00022 #include <string>
00023 
00025 class TUpdater {
00026 
00027   public:
00029     TUpdater();
00030 
00031   public:
00033     virtual ~TUpdater();
00034 
00035   public:
00037     void dump(const std::string & message = std::string(""),
00038               const std::string & prefix = std::string("")) const;
00039 
00040   public:
00042     virtual bool updated(void) const;
00043 
00045     virtual void update(void);
00046 
00048     virtual bool initialized(void) const;
00049 
00051     virtual void initialize(void);
00052 
00054     virtual void clear(void);
00055 
00056   private:
00057     int _expN;
00058     int _runN;
00059     int _evtN;
00060     bool _init;
00061 };
00062 
00063 //-----------------------------------------------------------------------------
00064 
00065 #ifdef TRKRECO_NO_INLINE
00066 #define inline
00067 #else
00068 #undef inline
00069 #define TUpdater_INLINE_DEFINE_HERE
00070 #endif
00071 
00072 #ifdef TUpdater_INLINE_DEFINE_HERE
00073 
00074 inline
00075 bool
00076 TUpdater::initialized(void) const {
00077     return _init;
00078 }
00079 
00080 inline
00081 void
00082 TUpdater::initialize(void) {
00083     _init = true;
00084 }
00085 
00086 inline
00087 void
00088 TUpdater::clear(void) {
00089     _expN = -1;
00090 }
00091 
00092 #endif
00093 
00094 #undef inline
00095 
00096 #endif /* TUpdater_FLAG_ */

Generated on Tue Nov 29 23:14:18 2016 for BOSS_7.0.2 by  doxygen 1.4.7