blob: f7c65485f85b229debcd0274e9fa545f0bd63a3b (
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
|
[
uuid(60a15ec5-4de8-11d7-a637-005056a20182),
version(1.0)
]
interface rpcecho
{
/* Add one to an integer */
void echo_AddOne(
[in,out,ref] uint32 *v
);
/* Echo an array of bytes back at the caller */
void echo_EchoData(
[in] uint32 len,
[in] [size_is(len)] uint8 in_data[],
[out] [size_is(len)] uint8 out_data[]
);
/* Sink data to the server */
void echo_SinkData(
[in] uint32 len,
[in,ref,size_is(len)] uint8 *data
);
/* Source data from server */
void echo_SourceData(
[in] uint32 len,
[out,ref,size_is(len)] uint8 *data
);
#define int uint32
typedef struct {
int *count;
} echo_Enum1;
typedef struct {
int *count;
} echo_Enum3;
typedef union {
[case(1)] echo_Enum1 enum1;
[case(3)] echo_Enum3 enum3;
} echo_EnumInfo;
typedef struct {
int level;
[switch_is(level)] echo_EnumInfo e;
} Struct1;
void TestCall (
[out] Struct1 *s1
);
}
|