3 #ifndef SZA_UTIL_REMOTESENSOR_H
4 #define SZA_UTIL_REMOTESENSOR_H
19 #include "carma/szautil/Temperature.h"
20 #include "carma/szautil/Time.h"
24 #include "carma/monitor/SystemStatus.h"
36 class RemoteSensorMsg :
public GenericTaskMsg {
56 class RemoteSensor :
public SpawnableTask<RemoteSensorMsg> {
63 RemoteSensor(std::string host,
64 unsigned timeoutIntervalInSeconds=0);
66 RemoteSensor(std::string host,
67 SystemStatusSubsystemMutex* ms,
70 unsigned timeoutIntervalInSeconds=0);
72 RemoteSensor(std::string host,
73 SystemStatusSubsystemMutex* ms,
80 sza::util::Temperature& minTemp,
81 sza::util::Temperature& maxTemp,
82 unsigned timeoutIntervalInSeconds=0);
84 void initialize(std::string host,
unsigned timeoutIntervalInSeconds,
85 SystemStatusSubsystemMutex* ms);
90 virtual ~RemoteSensor();
94 virtual void printTemps();
98 Time deltaSampleTime_;
99 TimeVal lastSampleTime_;
103 Temperature currentTemp_;
104 Temperature lastTemp_;
105 Temperature minTemp_;
106 Temperature maxTemp_;
109 bool haveMonitorSystem_;
111 SystemStatusSubsystemMutex* ms_;
125 void initializeTimeout(
unsigned timeoutIntervalInSeconds);
129 void processReadSensorMsg();
133 void processMsg(RemoteSensorMsg* msg);
138 virtual void executeReadSensor() = 0;
143 virtual void writeMonitorPoints(
bool isReachable);
152 #endif // End #ifndef SZA_UTIL_REMOTESENSOR_H
Classes that provide the pecializations of monitor points and sense poiints for different datatypes...
Tagged: Fri Nov 14 12:39:38 UTC 2003.
Abstract base class for any enumerated constants, like state machines.
Boolean value monitor point.
Tagged: Fri Nov 14 12:39:34 UTC 2003.
Tagged: Wed Jul 13 13:56:11 PDT 2011.
Double value monitor point.
Tagged: Mon Jul 19 14:47:35 PDT 2004.
Tagged: Tue May 2 16:31:46 PDT 2006.
Absolute time value monitor point.
Tagged: Fri Jan 26 16:49:57 NZDT 2007.