summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h b/TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h
new file mode 100644
index 00000000000..365f09b1470
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/LWFT/RM_Proxy.h
@@ -0,0 +1,40 @@
+// -*- C++ -*-
+// $Id$
+
+#ifndef RM_PROXY_H
+#define RM_PROXY_H
+
+#include <string>
+
+#include "Timer.h"
+
+#include "ReplicationManagerC.h"
+
+#include "Utilization_Monitor.h"
+
+class HostMonitor_Export RM_Proxy : protected Timer
+{
+public:
+ using Timer::start;
+ using Timer::stop;
+ using Timer::hertz;
+
+ RM_Proxy (CORBA::ORB_ptr);
+ virtual ~RM_Proxy (void);
+ void set_Utilization_Monitor (Utilization_Monitor *load_calc);
+ void proc_failure (const std::string &process_id);
+
+ /// Helper function to be called back after a timeout
+ virtual int pulse (void);
+
+protected:
+ CORBA::Object_ptr obtain_RM_ior (CORBA::ORB_ptr orb);
+
+private:
+ Utilization_Monitor *load_calc_;
+ ReplicationManager_var RM_var_;
+ CORBA::ORB_var orb_;
+};
+
+
+#endif /* RM_TIMER_H */