/* $Id: Test.idl 1206 2006-05-31 07:11:53Z rvosa $ Copyright (c) 1997 Lunatech Research / Bart Schuller See the file "Artistic" in the distribution for licensing and (lack of) warranties. Modified by Giles Atkinson 1998 to support additional tests. */ #pragma prefix "smop.org" module Test { struct TestStruct { string astring; short ashort; }; interface Test2; interface Test1 { typedef sequence LongSeq; typedef sequence OctetSeq; typedef short ShortArray [4]; long in_long(in long along); string in_string(in string astring); LongSeq in_long_sequence(in LongSeq asequence); OctetSeq in_octet_sequence(in OctetSeq asequence); TestStruct in_struct(in TestStruct astruct); ShortArray in_array(in ShortArray anarray); void inout_long(inout long along); void inout_string(inout string astring); void inout_long_sequence(inout LongSeq asequence); void inout_octet_sequence(inout OctetSeq asequence); void inout_struct(inout TestStruct astruct); void inout_array(inout ShortArray anarray); void out_long(out long along); void out_string(out string astring); void out_long_sequence(out LongSeq asequence); void out_octet_sequence(out OctetSeq asequence); void out_struct(out TestStruct astruct); void out_array(out ShortArray anarray); Test2 ret_object(); }; interface Test2 { string check(); exception AnException { string why; short minor; }; void etest() raises(AnException); void help_brother(inout long counter, in Test2 my_brother); // not tested, yet attribute string anattr; readonly attribute long count; const string NAME = "Bart"; const short AGE = 28; float flop(inout string exp_err, in float a, in float b); void dflop(inout string exp_err, inout double a, in double b); /* These are to test long long types and * auto-loading of marshalling code. */ long long addem(in long long a, in long long b); float ratio(in unsigned long long a, in unsigned long long b); void incrll(inout long long a); }; interface Test4; interface Test3 : Test2 { string check3(); Test3 get_forwarder(in Test3 target); Test4 get_test4(); }; interface Test4 : Test3, Test1 { }; };