// ********************************************************************** // // Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved. // // This copy of Ice is licensed to you under the terms described in the // ICE_LICENSE file included in this distribution. // // ********************************************************************** #ifndef ICE_PROXY_F_H #define ICE_PROXY_F_H #include #include #include #ifndef ICE_CPP11_MAPPING // C++98 mapping namespace IceProxy { namespace Ice { class Object; inline Object* upCast(Object* o) { return o; } } } namespace IceDelegate { namespace Ice { class Object; inline Object* upCast(Object* o) { return o; } } } namespace IceDelegateM { namespace Ice { class Object; inline Object* upCast(Object* o) { return o; } } } namespace IceDelegateD { namespace Ice { class Object; inline Object* upCast(Object* o) { return o; } } } namespace Ice { typedef IceInternal::ProxyHandle< ::IceProxy::Ice::Object> ObjectPrx; typedef ObjectPrx ObjectPrxPtr; } #else // C++11 mapping namespace Ice { class ObjectPrx; typedef ::std::shared_ptr ObjectPrxPtr; } namespace IceProxy { namespace Ice { // // ObjectPrx alias for compatibility with C++98 mapping // typedef ::Ice::ObjectPrx Object; } } #endif #endif