No. The usage of AMI on the client side has no relation to AMD on the server side (and vice versa). That is the client is unaware how the server implements its servants, and the server is unaware of how the client calls upon its objects.
The out parameter is returned in the AMI callback. For example, for this interface:
Code:
interface Foo
{
["ami"] void doit(string inparam, out string outparam);
};
You would call on the proxy.
Code:
bool doit_async(const ::Demo::AMI_Foo_doitPtr&, const ::std::string&);
And the outparam is returned in the ice_response callback.
Code:
class AMI_Foo_doitI : AMI_Foo_doit
{
public:
virtual void ice_response(const ::std::string&);
virtual void ice_exception(const ::Ice::Exception&);
};