summaryrefslogtreecommitdiff
path: root/modules/CIAO/ciao/CCM_QoS.idl
blob: f78f98d3665e418c2c246816e8150ed7bce9fde0 (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
// $Id$

#if !defined (CCM_QOS_IDL)
#define CCM_QOS_IDL

#include "ciao/CCM_Cookie.idl"
#include "ciao/CCM_CCMException.idl"

module Components
{
  module QoS {
    struct QoSInstance {
      string dimension;
      any value;
    };
    typedef sequence<QoSInstance> QoSInstances;
    struct QoSConstraint {
      string characteristic;
      QoSInstances instances;
    };
    typedef sequence<QoSConstraint> QoSConstraints;
    interface Negotiation
    {
      Components::Cookie require_qos(in QoSConstraint requirements, in string client_id)
        raises (CCMException);
      void release_qos (in Components::Cookie ck);
    };
  };
};

#endif /* CCM_QOS_IDL */