CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
StateMachineMonitorCollection.h
Go to the documentation of this file.
1 // $Id: StateMachineMonitorCollection.h,v 1.8 2011/03/07 15:31:32 mommsen Exp $
3 
4 #ifndef EventFilter_StorageManager_StateMachineMonitorCollection_h
5 #define EventFilter_StorageManager_StateMachineMonitorCollection_h
6 
7 #include <ostream>
8 #include <string>
9 
10 #include "xdata/String.h"
11 
14 
15 
16 namespace stor {
17 
27  {
28 
29  public:
30 
31  explicit StateMachineMonitorCollection(const utils::Duration_t& updateInterval);
32 
36  void updateHistory(const TransitionRecord&);
37 
41  typedef std::vector<TransitionRecord> History;
42  void getHistory(History&) const;
43 
47  void dumpHistory(std::ostream&) const;
48 
52  void setExternallyVisibleState( const std::string& );
53 
57  const std::string& externallyVisibleState() const;
58 
62  void setStatusMessage( const std::string& );
63 
67  void clearStatusMessage();
68 
72  bool statusMessage( std::string& msg ) const;
73 
77  std::string innerStateName() const;
78 
79  private:
80 
81  //Prevent copying of the StateMachineMonitorCollection
84 
85  virtual void do_calculateStatistics();
86  virtual void do_reset();
88  virtual void do_updateInfoSpaceItems();
89 
93 
94  std::string statusMessage_;
95 
96  xdata::String stateName_;
97 
98  };
99 
100 } // namespace stor
101 
102 #endif // EventFilter_StorageManager_StateMachineMonitorCollection_h
103 
104 
StateMachineMonitorCollection(const utils::Duration_t &updateInterval)
StateMachineMonitorCollection & operator=(StateMachineMonitorCollection const &)
static boost::mutex mutex
Definition: LHEProxy.cc:11
boost::posix_time::time_duration Duration_t
Definition: Utils.h:41
virtual void do_appendInfoSpaceItems(InfoSpaceItems &)
const std::string & externallyVisibleState() const
std::vector< std::pair< std::string, xdata::Serializable * > > InfoSpaceItems