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
|
// $Id$
#ifndef INTERRETURN_T_IDL
#define INTERRETURN_T_IDL
#pragma ciao lem "Base/InterReturnTE.idl"
#pragma ciao ami4ccm interface "InterReturnT::MyFoo"
#pragma ciao lem "Base/InterReturnTAE.idl"
#pragma ciao ami4ccm idl "Base/InterReturnTA.idl"
module InterReturnT
{
typedef short short_array[5];
// Mixed struct
struct TestStruct {
string key;
long x;
};
// Array
struct TestArr {
string key;
short_array x_array;
};
typedef TestArr TestArray[5];
// Union
union X_Union switch (short) {
case 0:
string x_test;
case 1:
long x_long;
};
// Sequence
struct test {
short x_test;
string x_teststr;
};
typedef sequence<test> TestSeq;
enum test_enum
{
ZERO,
ONE,
TWO
};
exception InternalError
{
long id;
string error_string;
};
// Sender/Receiver interface
interface MyFoo
{
void ret_void (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
long ret_long (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
double ret_double (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
TestStruct ret_struct ( in string in_str, out string answer,
out long l_cmd)
raises (InternalError);
TestArray ret_array (in string in_str, out string answer,
out long l_cmd)
raises (InternalError);
TestSeq ret_seq (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
X_Union ret_union (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
test_enum ret_enum (in string in_str, out string answer, out long l_cmd)
raises (InternalError);
};
};
#endif
|