summaryrefslogtreecommitdiff
path: root/CIAO/connectors/dds4ccm/examples/ShapesContr/Base/Shapes_Contr_Base.idl
blob: dc8acc6419926e0c3470db8b06a281d6c75afb7f (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
/**
 * @file Shapes_Contr_Base.idl
 * @author Marijke Hengstmengel (mhengstmengel@remedy.nl)
 */

#ifndef SHAPES_CONTR_BASE_IDL
#define SHAPES_CONTR_BASE_IDL


#pragma ciao lem "../Base/Shapes_Contr_BaseE.idl"

interface shape_attributes_get
{
  unsigned short max_size ();
  unsigned short max_x ();
  unsigned short max_y ();
  boolean resize ();
  unsigned long publish_rate ();
};

interface shape_attributes_set
{
  void max_size(in unsigned short ms);
  void max_x(in unsigned short mx);
  void max_y(in unsigned short my);
  void resize(in boolean rs);
  void publish_rate (in unsigned long pr);

  void get_attr_values (out unsigned short max_size, out  unsigned short max_x, out unsigned short max_y, out  unsigned long publish_rate, out boolean resize);
  void update_changes ();
};

interface shape_changes
{
  void pass_change_event();
};

struct shape_info
{
  string shape;
  string color;
  unsigned short size;
  unsigned short posX;
  unsigned short posY;
};

typedef sequence<shape_info> ShapeInfoSeq;

interface shape_received
{
    unsigned short number_of_shapes();
    ShapeInfoSeq get_info_shapes();
};

struct shape_aggr
{
  string shape;
  string color;
  unsigned long  number_of_shapes;
  unsigned short last_size;
  unsigned short last_posX;
  unsigned short last_posY;
};

typedef sequence<shape_aggr> ShapeAggrSeq;

interface shapes_aggregates
{
  ShapeAggrSeq get_aggr_shapes();
};

#endif