blob: 7821644a85ae0fcd0ab6c747e394348fbe9d2c16 (
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
88
89
|
#ifndef FOO_IDL_
#define FOO_IDL_
#include <Components.idl>
typedef sequence<short> short_sequence;
typedef sequence<long> long_sequence;
typedef sequence<float> float_sequence;
typedef sequence<double> double_sequence;
typedef sequence<string> string_sequence;
typedef long long_array[5];
typedef string string_array[5];
typedef string<50> fixed_string;
typedef wstring<50> fixed_wstring;
struct Bar
{
short s;
long l;
float f;
double d;
};
typedef sequence<Bar, 5> BarSeq;
struct Baz
{
string name;
BarSeq my_bar_sequence;
};
enum DataType
{
dtEmpty,
dtLong,
dtShort
};
union Data switch (DataType)
{
case dtLong: long longData;
case dtShort: short shortData;
};
enum DataType2
{
dtString,
dtShortType
};
union Data2 switch (DataType2)
{
case dtString: string stringData;
case dtShortType: short shortData;
};
interface intf {};
valuetype vtype_ {};
component Foo
{
attribute intf my_intf;
attribute vtype_ my_vtype;
attribute short my_short;
attribute long my_long;
attribute float my_float;
attribute double my_double;
attribute fixed_string my_fixed_string;
attribute string my_variable_string;
attribute fixed_wstring my_fixed_wstring;
attribute wstring my_variable_wstring;
attribute long_array my_long_array;
attribute string_array my_string_array;
attribute short_sequence my_short_sequence;
attribute long_sequence my_long_sequence;
attribute float_sequence my_float_sequence;
attribute double_sequence my_double_sequence;
attribute string_sequence my_string_sequence;
attribute Bar my_bar_struct;
attribute Baz my_baz_struct;
attribute Data my_data_union;
attribute Data2 my_var_data_union;
};
#endif /* FOO_IDL_ */
|