[omniORB] Confusion with generated out parameters in omniidl
jnye@micro-optics.com
jnye@micro-optics.com
Fri, 2 Feb 2001 09:40:15 -0400
Hi All,
I have a question about parameters in the generated C++ code. I've included
an example to illustrate.
//////////////////////////////////////////////
// An example IDL file:
interface InterfaceOne
{
};
interface InterfaceTwo
{
InterfaceOne op1();
void op2(in InterfaceOne iface1);
void op3(out InterfaceOne iface1);
void op4(inout InterfaceOne iface1);
};
////////////////////////////////////////////////////////////////////////////
/
// Generated C++ POA code for InterfaceTwo
class _impl_InterfaceTwo : public virtual omniServant
{
public:
virtual ~_impl_InterfaceTwo();
virtual InterfaceOne_ptr op1() = 0;
virtual void op2(InterfaceOne_ptr iface1) = 0;
virtual void op3(_CORBA_ObjRef_OUT_arg< _objref_InterfaceOne,
InterfaceOne_Helper > iface1) = 0;
virtual void op4(InterfaceOne_ptr& iface1) = 0;
...
};
////////////////////////////////////////////////////////////////////////////
/
Op1, op2 and op3 were all generated as I expected them to be, but op3 has a
strange looking template thingy when I was expecting the parameter to be of
type InterfaceOne_out. Doesn't the CORBA standard specify _out suffix?
Platform: WinNT 4.0
TIA,
Jason