summaryrefslogtreecommitdiff
path: root/TAO/CIAO/ciao/Deployment_Base.idl
blob: 82f97aa4a1fc2fcbc7f1fed3e28ec7d4112b0516 (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
//$Id$
#ifndef DEPLOYMENT_BASE_IDL
#define DEPLOYMENT_BASE_IDL

#include <orb.idl>
#include "tao/ULongSeq.pidl"
#include "Deployment_Core.idl"

module Deployment {

  enum SatisfierPropertyKind {
    Quantity,
    Capacity,
    Minimum,
    Maximum,
    _Attribute,
    Selection
  };

  struct SatisfierProperty {
    string name;
    SatisfierPropertyKind kind;
    boolean dynamic;
    any value;
  };

  typedef sequence < SatisfierProperty > SatisfierProperties;

  struct SharedResource {
    string name;
    ::CORBA::StringSeq resourceType;
    ::CORBA::ULongSeq nodeRef;
    SatisfierProperties property;
  };

  typedef sequence < SharedResource > SharedResources;

  struct Resource {
    string name;
    ::CORBA::StringSeq resourceType;
    SatisfierProperties property;
  };

  typedef sequence < Resource > Resources;

  struct Node {
    string name;
    string label;
    ::CORBA::ULongSeq sharedResourceRef;
    ::CORBA::ULongSeq connectionRef;
    Resources resource;
  };

  typedef sequence < Node > Nodes;

  struct Interconnect {
    string name;
    string label;
    ::CORBA::ULongSeq connectionRef;
    ::CORBA::ULongSeq connectRef;
    Resources resource;
  };

  typedef sequence < Interconnect > Interconnects;

  struct Bridge {
    string name;
    string label;
    ::CORBA::ULongSeq connectRef;
    Resources resource;
  };

  typedef sequence < Bridge > Bridges;

  struct Domain {
    string UUID;
    string label;
    SharedResources sharedResource;
    Nodes node;
    Interconnects interconnect;
    Bridges bridge;
    Properties infoProperty;
  };

};

#endif /* DEPLOYMENT_BASE_IDL */