1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24#ifndef __com_sun_star_uno_XInterface_idl__
25#include <com/sun/star/uno/XInterface.idl>
26#endif
27
28#ifndef __com_sun_star_beans_XPropertySet_idl_
29#include <com/sun/star/beans/XPropertySet.idl>
30#endif
31
32#ifndef __com_sun_star_uno_Exception_idl__
33#include <com/sun/star/uno/Exception.idl>
34#endif
35
36#ifndef __com_sun_star_uno_Exception_idl__
37#include <com/sun/star/uno/Any.idl>
38#endif
39
40
41module com { module sun { module star { module lib { module uno {
42module protocols { module urp {
43
44	struct TestPrimitiveStruct {
45		boolean        zBool;
46		short          zShort;
47		unsigned short zUShort;
48		long           zLong;
49		unsigned long  zULong;
50		hyper          zHyper;
51		unsigned hyper zUHyper;
52		float          zFloat;
53		double         zDouble;
54		char           zChar;
55		byte           zByte;
56		string         zString;
57		any            zAny;
58	};
59
60	struct TestPrimitiveSeqStruct {
61		sequence<boolean>        zBool;
62		sequence<short>          zShort;
63		sequence<unsigned short> zUShort;
64		sequence<long>           zLong;
65		sequence<unsigned long>  zULong;
66		sequence<hyper>          zHyper;
67		sequence<unsigned hyper> zUHyper;
68		sequence<float>          zFloat;
69		sequence<double>         zDouble;
70		sequence<char>           zChar;
71		sequence<byte>           zByte;
72		sequence<string>         zString;
73		sequence<any>            zAny;
74	};
75
76	struct TestNestedStruct {
77		TestPrimitiveStruct    primitiveStruct;
78		TestPrimitiveSeqStruct primitiveSeqStruct;
79	};
80
81	struct TestNestedSeqStruct {
82		sequence< sequence< long > > val;
83	};
84
85	interface TestXInterface : com::sun::star::uno::XInterface {
86		void method1([in] com::sun::star::uno::XInterface itf) raises( com::sun::star::uno::Exception );
87		void method2([out] com::sun::star::uno::XInterface itf) raises( com::sun::star::uno::Exception );
88		void method3([inout] com::sun::star::uno::XInterface itf) raises( com::sun::star::uno::Exception );
89		com::sun::star::uno::XInterface method4() raises( com::sun::star::uno::Exception );
90
91		any returnAny() raises( com::sun::star::uno::Exception );
92
93		void  method() raises( com::sun::star::uno::Exception );
94		void  methodWithInParameter([in] string text) raises( com::sun::star::uno::Exception );
95		void  methodWithOutParameter([out] string text) raises( com::sun::star::uno::Exception );
96		void  methodWithInOutParameter([inout] string text) raises( com::sun::star::uno::Exception );
97		string  methodWithResult() raises( com::sun::star::uno::Exception );
98
99		string MethodWithIn_Out_InOut_Paramters_and_result([in] string text, [out] string outtext, [inout] string inouttext) raises( com::sun::star::uno::Exception );
100	};
101
102	struct TestInterfaceStruct
103	{
104		com::sun::star::uno::XInterface hallo;
105
106		com::sun::star::beans::XPropertySet hallo2;
107	};
108
109	enum TestEnum {
110		A = 7,
111		B = 8,
112		C = 11
113	};
114
115}; }; }; }; }; }; };
116