CARMA C++
MonitorPointUpdateServant.h
1 #ifndef CARMA_MONITOR_MONITORPOINTUPDATESERVANT_H
2 #define CARMA_MONITOR_MONITORPOINTUPDATESERVANT_H
3 
4 #include "carma/util/PthreadMutex.h"
5 #include "carma/monitor/monitorframe_skel.h"
6 
7 #include <boost/thread/mutex.hpp>
8 #include <tao/Basic_Types.h>
9 
10 
11 namespace carma {
12 namespace monitor {
13 
14 class SubsystemFrameBuffer;
15 
22 public:
23 
30  explicit MonitorPointUpdateServant(
31  SubsystemFrameBuffer & buffer,
32  boost::mutex & bufferWriteMutex );
33 
39 
48  static std::string makeName (ushort subsystemID);
49 
50  //
51  // IDL:mmarray.org/carma/monitor/MonitorPointUpdate/monitorPointSeqUpdate:1.0
52  //
67  virtual CORBA::Double
69  const MonitorSampleValues & values,
70  CORBA::Long frameTime,
71  CORBA::Double writeDelay );
72 
73  private:
74 
75  // No copying
77  MonitorPointUpdateServant & operator=( const MonitorPointUpdateServant & rhs );
78 
79  SubsystemFrameBuffer & frameBuffer_;
80  boost::mutex & frameBufferMutex_;
81 
82 }; // End class MonitorPointUpdateServant
83 
84 
85 } // namespace carma::monitor
86 } // namespace carma
87 
88 #endif
Frame containing monitor points for a monitor subsystem, and mapped to an IPQ - essentially a Subsyst...
virtual CORBA::Double monitorPointSampleUpdate(const MonitorSampleValues &values, CORBA::Long frameTime, CORBA::Double writeDelay)
DO method to write modified monitor points.
static std::string makeName(ushort subsystemID)
Static method that returns DO name based on associated subsystemID.
virtual ~MonitorPointUpdateServant()
Destructor Stops thread and deactivates root POA.
MonitorPointUpdateServant(SubsystemFrameBuffer &buffer, boost::mutex &bufferWriteMutex)
Constructor.
class that represents the scriber part of the frameScriberPublisher.