summaryrefslogtreecommitdiff
path: root/DAnCE/TargetManager_Ext/TargetManagerExt.idl
diff options
context:
space:
mode:
Diffstat (limited to 'DAnCE/TargetManager_Ext/TargetManagerExt.idl')
-rw-r--r--DAnCE/TargetManager_Ext/TargetManagerExt.idl84
1 files changed, 84 insertions, 0 deletions
diff --git a/DAnCE/TargetManager_Ext/TargetManagerExt.idl b/DAnCE/TargetManager_Ext/TargetManagerExt.idl
new file mode 100644
index 00000000000..26d0c336b62
--- /dev/null
+++ b/DAnCE/TargetManager_Ext/TargetManagerExt.idl
@@ -0,0 +1,84 @@
+// $Id$
+
+/**
+ * @file TargetManagerExt.idl
+ *
+ * @brief The Extensions to the TM interface for ARMS demo
+ *
+ * @author Nilabja R <nilabjar@dre.vanderbilt.edu>
+ * @author Nishanth Shankaran <nshankar@dre.vanderbilt.edu>
+ *
+ * This file declares a interface which will be implemented as
+ * a facet by the TargetManager component
+ */
+
+#include "DAnCE/Interfaces/NodeManagerDaemon.idl"
+
+module CIAO
+{
+ /**
+ * @struct Cpu_Info
+ * @brief Consists of individual host-cpu info
+ */
+ struct Host_Info
+ {
+ string hostname;
+ double cpu_util;
+ };
+
+ /// The sequence of CPU infos
+ typedef sequence<Host_Info> Host_Infos;
+
+ /**
+ * @struct Component_Cpu_Util
+ * @brief Contains a component CPU Util
+ */
+ struct Component_Info
+ {
+ string component_name;
+ double cpu_util;
+ };
+
+ /// The sequence of component cpu utilization
+ typedef sequence <Component_Info> Component_Infos;
+
+
+ /**
+ * @struct Host_NodeManager
+ * @brief Contains the node manager to host reference
+ */
+ struct Host_NodeManager
+ {
+ /// host name
+ string host_;
+
+ /// the node manager IOR
+ ::CIAO::NodeManagerDaemon node_mgr_;
+ };
+
+ /// Sequence of NodeManager.
+ typedef sequence <Host_NodeManager> Host_NodeManager_seq;
+
+ /**
+ * @interface TargetManagerExt
+ * @brief The Target Manager Extension
+ *
+ * Contains the interface used by the RACE
+ * controller.
+ */
+ interface TargetManagerExt
+ {
+ ///Returns the pid in which a component runs
+ long get_pid (in string component_uuid);
+
+ /// returns the cpu usage for each host in the
+ /// last cycle
+ Host_Infos get_host_cpu ();
+
+ /// Return the detail of the components
+ Component_Infos get_component_cpu ();
+
+ /// Returns the OR of the Node managers
+ Host_NodeManager_seq get_all_node_managers ();
+ };
+};