1//
2// Copyright (c) ZeroC, Inc. All rights reserved.
3//
4
5#pragma once
6
7module Test
8{
9
10const byte ByteConst1 = 10;
11const short ShortConst1 = 20;
12const int IntConst1 = 30;
13const long LongConst1 = 40;
14
15const byte ByteConst2 = 126;
16const short ShortConst2 = 32766;
17const int IntConst2 = 2147483647;
18const long LongConst2 = 2147483646;
19
20enum ByteEnum
21{
22    benum1,
23    benum2,
24    benum3 = ByteConst1,
25    benum4,
26    benum5 = ShortConst1,
27    benum6,
28    benum7 = IntConst1,
29    benum8,
30    benum9 = LongConst1,
31    benum10,
32    benum11 = ByteConst2
33}
34
35enum ShortEnum
36{
37    senum1 = 3,
38    senum2,
39    senum3 = ByteConst1,
40    senum4,
41    senum5 = ShortConst1,
42    senum6,
43    senum7 = IntConst1,
44    senum8,
45    senum9 = LongConst1,
46    senum10,
47    senum11 = ShortConst2
48}
49
50enum IntEnum
51{
52    ienum1,
53    ienum2,
54    ienum3 = ByteConst1,
55    ienum4,
56    ienum5 = ShortConst1,
57    ienum6,
58    ienum7 = IntConst1,
59    ienum8,
60    ienum9 = LongConst1,
61    ienum10,
62    ienum11 = IntConst2,
63    ienum12 = LongConst2
64}
65
66enum SimpleEnum
67{
68    red,
69    green,
70    blue
71}
72
73interface TestIntf
74{
75    ByteEnum opByte(ByteEnum b1, out ByteEnum b2);
76    ShortEnum opShort(ShortEnum s1, out ShortEnum s2);
77    IntEnum opInt(IntEnum i1, out IntEnum i2);
78    SimpleEnum opSimple(SimpleEnum s1, out SimpleEnum s2);
79
80    void shutdown();
81}
82
83}
84