summaryrefslogtreecommitdiff
path: root/TAO/CIAO/DAnCE/TargetManager/TargetManagerExt.idl
blob: cc9443b3c5164b9047e258be397a4c529c1611a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
// $Id$

/** 
 * @file TargetManagerExt.idl
 *
 * @brief The Extensions to the TM interface for ARMS demo
 *
 * This file declares a interface which will be implemented as
 * a facet by the TargetManager component
 */

/**
 * @module CIAO
 * 
 * @brief The CIAO module
 */

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;

  /**
   * @interface TargetManagerExt
   * @brief The Target Manager Extension
   *
   * Contains the interface used by the RACE
   * controller.
   */
  interface TargetManagerExt
  {
    long get_pid (in string component_uuid);
    Host_Infos get_host_cpu ();
    Component_Infos get_component_cpu ();
  };
};