1[ uuid(db7e03ba-5bdb-11dc-9f61-00023f108d6c),
2  version(1.0),
3  pointer_default(unique)
4]
5
6interface echou {
7
8    typedef [switch_type(long int)] union
9    {
10        [case(1)] long int integer;
11        [case(2)] float fp;
12        [case(3),string] char *str;
13    } EchoUnion;
14
15    boolean ReplyBack(
16        [in] handle_t h,
17        [in] long int in_type,
18        [in, switch_is(in_type), unique] EchoUnion* in_value,
19        [out, switch_is(in_type)] EchoUnion** out_value,
20        [out, ref] error_status_t *	status
21        );
22}
23