// ********************************************************************** // // 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 TEST_AMD_I_H #define TEST_AMD_I_H #include #include class MyDerivedClassI : #ifdef ICE_CPP11_MAPPING public Test::MyDerivedClassDisp #else public Test::MyDerivedClass #endif { public: MyDerivedClassI(); // // Override the Object "pseudo" operations to verify the operation mode. // virtual bool ice_isA(const std::string&, const Ice::Current&) const; virtual void ice_ping(const Ice::Current&) const; virtual std::vector ice_ids(const Ice::Current&) const; virtual const std::string& ice_id(const Ice::Current&) const; #ifdef ICE_CPP11_MAPPING virtual void shutdown_async(::std::function, ::std::function, const Ice::Current&); virtual void delay_async(Ice::Int, ::std::function, ::std::function, const Ice::Current&); virtual void opVoid_async(::std::function, ::std::function, const Ice::Current&); virtual void opByte_async(Ice::Byte, Ice::Byte, ::std::function, ::std::function, const Ice::Current&); virtual void opBool_async(bool, bool, ::std::function, ::std::function, const Ice::Current&); virtual void opShortIntLong_async(short, int, long long int, ::std::function, ::std::function, const Ice::Current&); virtual void opFloatDouble_async(float, double, ::std::function, ::std::function, const Ice::Current&); virtual void opString_async(const std::string&, const std::string&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyEnum_async(Test::MyEnum, ::std::function, ::std::function, const Ice::Current&); virtual void opMyClass_async(const ::std::shared_ptr&, ::std::function&, const ::std::shared_ptr&, const ::std::shared_ptr&)>, ::std::function, const Ice::Current&); virtual void opStruct_async(const Test::Structure&, const Test::Structure&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteS_async(const Test::ByteS&, const Test::ByteS&, ::std::function, ::std::function, const Ice::Current&); virtual void opBoolS_async(const Test::BoolS&, const Test::BoolS&, ::std::function, ::std::function, const Ice::Current&); virtual void opShortIntLongS_async(const Test::ShortS&, const Test::IntS&, const Test::LongS&, ::std::function, ::std::function, const Ice::Current&); virtual void opFloatDoubleS_async(const Test::FloatS&, const Test::DoubleS&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringS_async(const Test::StringS&, const Test::StringS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteSS_async(const Test::ByteSS&, const Test::ByteSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opBoolSS_async(const Test::BoolSS&, const Test::BoolSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opShortIntLongSS_async(const Test::ShortSS&, const Test::IntSS&, const Test::LongSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opFloatDoubleSS_async(const Test::FloatSS&, const Test::DoubleSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringSS_async(const Test::StringSS&, const Test::StringSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringSSS_async(const Test::StringSSS&, const Test::StringSSS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteBoolD_async(const Test::ByteBoolD&, const Test::ByteBoolD&, ::std::function, ::std::function, const Ice::Current&); virtual void opShortIntD_async(const Test::ShortIntD&, const Test::ShortIntD&, ::std::function, ::std::function, const Ice::Current&); virtual void opLongFloatD_async(const Test::LongFloatD&, const Test::LongFloatD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringStringD_async(const Test::StringStringD&, const Test::StringStringD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringMyEnumD_async(const Test::StringMyEnumD&, const Test::StringMyEnumD&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyEnumStringD_async(const Test::MyEnumStringD&, const Test::MyEnumStringD&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyStructMyEnumD_async(const Test::MyStructMyEnumD&, const Test::MyStructMyEnumD&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteBoolDS_async(const Test::ByteBoolDS&, const Test::ByteBoolDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opShortIntDS_async(const Test::ShortIntDS&, const Test::ShortIntDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opLongFloatDS_async(const Test::LongFloatDS&, const Test::LongFloatDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringStringDS_async(const Test::StringStringDS&, const Test::StringStringDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringMyEnumDS_async(const Test::StringMyEnumDS&, const Test::StringMyEnumDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyEnumStringDS_async(const Test::MyEnumStringDS&, const Test::MyEnumStringDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyStructMyEnumDS_async(const Test::MyStructMyEnumDS&, const Test::MyStructMyEnumDS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteByteSD_async(const Test::ByteByteSD&, const Test::ByteByteSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opBoolBoolSD_async(const Test::BoolBoolSD&, const Test::BoolBoolSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opShortShortSD_async(const Test::ShortShortSD&, const Test::ShortShortSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opIntIntSD_async(const Test::IntIntSD&, const Test::IntIntSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opLongLongSD_async(const Test::LongLongSD&, const Test::LongLongSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringFloatSD_async(const Test::StringFloatSD&, const Test::StringFloatSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringDoubleSD_async(const Test::StringDoubleSD&, const Test::StringDoubleSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringStringSD_async(const Test::StringStringSD&, const Test::StringStringSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyEnumMyEnumSD_async(const Test::MyEnumMyEnumSD&, const Test::MyEnumMyEnumSD&, ::std::function, ::std::function, const Ice::Current&); virtual void opIntS_async(const Test::IntS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteSOneway_async(const Test::ByteS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteSOnewayCallCount_async(::std::function, ::std::function, const Ice::Current&); virtual void opContext_async(::std::function, ::std::function, const Ice::Current&); virtual void opDoubleMarshaling_async(Ice::Double, const Test::DoubleS&, ::std::function, ::std::function, const Ice::Current&); virtual void opIdempotent_async(::std::function, ::std::function, const Ice::Current&); virtual void opNonmutating_async(::std::function, ::std::function, const Ice::Current&); virtual void opDerived_async(::std::function, ::std::function, const Ice::Current&); virtual void opByte1_async(Ice::Byte, ::std::function, ::std::function, const Ice::Current&); virtual void opShort1_async(Ice::Short, ::std::function, ::std::function, const Ice::Current&); virtual void opInt1_async(Ice::Int, ::std::function, ::std::function, const Ice::Current&); virtual void opLong1_async(Ice::Long, ::std::function, ::std::function, const Ice::Current&); virtual void opFloat1_async(Ice::Float, ::std::function, ::std::function, const Ice::Current&); virtual void opDouble1_async(Ice::Double, ::std::function, ::std::function, const Ice::Current&); virtual void opString1_async(const std::string&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringS1_async(const Test::StringS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteBoolD1_async(const Test::ByteBoolD&, ::std::function, ::std::function, const Ice::Current&); virtual void opStringS2_async(const Test::StringS&, ::std::function, ::std::function, const Ice::Current&); virtual void opByteBoolD2_async(const Test::ByteBoolD&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyStruct1_async(const Test::MyStruct1&, ::std::function, ::std::function, const Ice::Current&); virtual void opMyClass1_async(const ::std::shared_ptr&, ::std::function&)>, ::std::function, const Ice::Current&); #else virtual void shutdown_async(const Test::AMD_MyClass_shutdownPtr&, const Ice::Current&); virtual void delay_async(const Test::AMD_MyClass_delayPtr&, Ice::Int, const Ice::Current&); virtual void opVoid_async(const Test::AMD_MyClass_opVoidPtr&, const Ice::Current&); virtual void opByte_async(const Test::AMD_MyClass_opBytePtr&, Ice::Byte, Ice::Byte, const Ice::Current&); virtual void opBool_async(const Test::AMD_MyClass_opBoolPtr&, bool, bool, const Ice::Current&); virtual void opShortIntLong_async(const Test::AMD_MyClass_opShortIntLongPtr&, Ice::Short, Ice::Int, Ice::Long, const Ice::Current&); virtual void opFloatDouble_async(const Test::AMD_MyClass_opFloatDoublePtr&, Ice::Float, Ice::Double, const Ice::Current&); virtual void opString_async(const Test::AMD_MyClass_opStringPtr&, const std::string&, const std::string&, const Ice::Current&); virtual void opMyEnum_async(const Test::AMD_MyClass_opMyEnumPtr&, Test::MyEnum, const Ice::Current&); virtual void opMyClass_async(const Test::AMD_MyClass_opMyClassPtr&, const Test::MyClassPrxPtr&, const Ice::Current&); virtual void opStruct_async(const Test::AMD_MyClass_opStructPtr&, const Test::Structure&, const Test::Structure&, const Ice::Current&); virtual void opByteS_async(const Test::AMD_MyClass_opByteSPtr&, const Test::ByteS&, const Test::ByteS&, const Ice::Current&); virtual void opBoolS_async(const Test::AMD_MyClass_opBoolSPtr&, const Test::BoolS&, const Test::BoolS&, const Ice::Current&); virtual void opShortIntLongS_async(const Test::AMD_MyClass_opShortIntLongSPtr&, const Test::ShortS&, const Test::IntS&, const Test::LongS&, const Ice::Current&); virtual void opFloatDoubleS_async(const Test::AMD_MyClass_opFloatDoubleSPtr&, const Test::FloatS&, const Test::DoubleS&, const Ice::Current&); virtual void opStringS_async(const Test::AMD_MyClass_opStringSPtr&, const Test::StringS&, const Test::StringS&, const Ice::Current&); virtual void opByteSS_async(const Test::AMD_MyClass_opByteSSPtr&, const Test::ByteSS&, const Test::ByteSS&, const Ice::Current&); virtual void opBoolSS_async(const Test::AMD_MyClass_opBoolSSPtr&, const Test::BoolSS&, const Test::BoolSS&, const Ice::Current&); virtual void opShortIntLongSS_async(const Test::AMD_MyClass_opShortIntLongSSPtr&, const Test::ShortSS&, const Test::IntSS&, const Test::LongSS&, const Ice::Current&); virtual void opFloatDoubleSS_async(const Test::AMD_MyClass_opFloatDoubleSSPtr&, const Test::FloatSS&, const Test::DoubleSS&, const Ice::Current&); virtual void opStringSS_async(const Test::AMD_MyClass_opStringSSPtr&, const Test::StringSS&, const Test::StringSS&, const Ice::Current&); virtual void opStringSSS_async(const Test::AMD_MyClass_opStringSSSPtr&, const Test::StringSSS&, const Test::StringSSS&, const Ice::Current&); virtual void opByteBoolD_async(const Test::AMD_MyClass_opByteBoolDPtr&, const Test::ByteBoolD&, const Test::ByteBoolD&, const Ice::Current&); virtual void opShortIntD_async(const Test::AMD_MyClass_opShortIntDPtr&, const Test::ShortIntD&, const Test::ShortIntD&, const Ice::Current&); virtual void opLongFloatD_async(const Test::AMD_MyClass_opLongFloatDPtr&, const Test::LongFloatD&, const Test::LongFloatD&, const Ice::Current&); virtual void opStringStringD_async(const Test::AMD_MyClass_opStringStringDPtr&, const Test::StringStringD&, const Test::StringStringD&, const Ice::Current&); virtual void opStringMyEnumD_async(const Test::AMD_MyClass_opStringMyEnumDPtr&, const Test::StringMyEnumD&, const Test::StringMyEnumD&, const Ice::Current&); virtual void opMyEnumStringD_async(const Test::AMD_MyClass_opMyEnumStringDPtr&, const Test::MyEnumStringD&, const Test::MyEnumStringD&, const Ice::Current&); virtual void opMyStructMyEnumD_async(const Test::AMD_MyClass_opMyStructMyEnumDPtr&, const Test::MyStructMyEnumD&, const Test::MyStructMyEnumD&, const Ice::Current&); virtual void opByteBoolDS_async(const Test::AMD_MyClass_opByteBoolDSPtr&, const Test::ByteBoolDS&, const Test::ByteBoolDS&, const Ice::Current&); virtual void opShortIntDS_async(const Test::AMD_MyClass_opShortIntDSPtr&, const Test::ShortIntDS&, const Test::ShortIntDS&, const Ice::Current&); virtual void opLongFloatDS_async(const Test::AMD_MyClass_opLongFloatDSPtr&, const Test::LongFloatDS&, const Test::LongFloatDS&, const Ice::Current&); virtual void opStringStringDS_async(const Test::AMD_MyClass_opStringStringDSPtr&, const Test::StringStringDS&, const Test::StringStringDS&, const Ice::Current&); virtual void opStringMyEnumDS_async(const Test::AMD_MyClass_opStringMyEnumDSPtr&, const Test::StringMyEnumDS&, const Test::StringMyEnumDS&, const Ice::Current&); virtual void opMyEnumStringDS_async(const Test::AMD_MyClass_opMyEnumStringDSPtr&, const Test::MyEnumStringDS&, const Test::MyEnumStringDS&, const Ice::Current&); virtual void opMyStructMyEnumDS_async(const Test::AMD_MyClass_opMyStructMyEnumDSPtr&, const Test::MyStructMyEnumDS&, const Test::MyStructMyEnumDS&, const Ice::Current&); virtual void opByteByteSD_async(const Test::AMD_MyClass_opByteByteSDPtr&, const Test::ByteByteSD&, const Test::ByteByteSD&, const Ice::Current&); virtual void opBoolBoolSD_async(const Test::AMD_MyClass_opBoolBoolSDPtr&, const Test::BoolBoolSD&, const Test::BoolBoolSD&, const Ice::Current&); virtual void opShortShortSD_async(const Test::AMD_MyClass_opShortShortSDPtr&, const Test::ShortShortSD&, const Test::ShortShortSD&, const Ice::Current&); virtual void opIntIntSD_async(const Test::AMD_MyClass_opIntIntSDPtr&, const Test::IntIntSD&, const Test::IntIntSD&, const Ice::Current&); virtual void opLongLongSD_async(const Test::AMD_MyClass_opLongLongSDPtr&, const Test::LongLongSD&, const Test::LongLongSD&, const Ice::Current&); virtual void opStringFloatSD_async(const Test::AMD_MyClass_opStringFloatSDPtr&, const Test::StringFloatSD&, const Test::StringFloatSD&, const Ice::Current&); virtual void opStringDoubleSD_async(const Test::AMD_MyClass_opStringDoubleSDPtr&, const Test::StringDoubleSD&, const Test::StringDoubleSD&, const Ice::Current&); virtual void opStringStringSD_async(const Test::AMD_MyClass_opStringStringSDPtr&, const Test::StringStringSD&, const Test::StringStringSD&, const Ice::Current&); virtual void opMyEnumMyEnumSD_async(const Test::AMD_MyClass_opMyEnumMyEnumSDPtr&, const Test::MyEnumMyEnumSD&, const Test::MyEnumMyEnumSD&, const Ice::Current&); virtual void opIntS_async(const Test::AMD_MyClass_opIntSPtr&, const Test::IntS&, const Ice::Current&); virtual void opByteSOneway_async(const Test::AMD_MyClass_opByteSOnewayPtr&, const Test::ByteS&, const Ice::Current&); virtual void opByteSOnewayCallCount_async(const Test::AMD_MyClass_opByteSOnewayCallCountPtr&, const Ice::Current&); virtual void opContext_async(const Test::AMD_MyClass_opContextPtr&, const Ice::Current&); virtual void opDoubleMarshaling_async(const Test::AMD_MyClass_opDoubleMarshalingPtr&, Ice::Double, const Test::DoubleS&, const Ice::Current&); virtual void opIdempotent_async(const Test::AMD_MyClass_opIdempotentPtr&, const Ice::Current&); virtual void opNonmutating_async(const Test::AMD_MyClass_opNonmutatingPtr&, const Ice::Current&); virtual void opDerived_async(const Test::AMD_MyDerivedClass_opDerivedPtr&, const Ice::Current&); virtual void opByte1_async(const Test::AMD_MyClass_opByte1Ptr&, Ice::Byte, const Ice::Current&); virtual void opShort1_async(const Test::AMD_MyClass_opShort1Ptr&, Ice::Short, const Ice::Current&); virtual void opInt1_async(const Test::AMD_MyClass_opInt1Ptr&, Ice::Int, const Ice::Current&); virtual void opLong1_async(const Test::AMD_MyClass_opLong1Ptr&, Ice::Long, const Ice::Current&); virtual void opFloat1_async(const Test::AMD_MyClass_opFloat1Ptr&, Ice::Float, const Ice::Current&); virtual void opDouble1_async(const Test::AMD_MyClass_opDouble1Ptr&, Ice::Double, const Ice::Current&); virtual void opString1_async(const Test::AMD_MyClass_opString1Ptr&, const std::string&, const Ice::Current&); virtual void opStringS1_async(const Test::AMD_MyClass_opStringS1Ptr&, const Test::StringS&, const Ice::Current&); virtual void opByteBoolD1_async(const Test::AMD_MyClass_opByteBoolD1Ptr&, const Test::ByteBoolD&, const Ice::Current&); virtual void opStringS2_async(const Test::AMD_MyClass_opStringS2Ptr&, const Test::StringS&, const Ice::Current&); virtual void opByteBoolD2_async(const Test::AMD_MyClass_opByteBoolD2Ptr&, const Test::ByteBoolD&, const Ice::Current&); virtual void opMyStruct1_async(const Test::AMD_MyDerivedClass_opMyStruct1Ptr&, const Test::MyStruct1&, const Ice::Current&); virtual void opMyClass1_async(const Test::AMD_MyDerivedClass_opMyClass1Ptr&, const Test::MyClass1Ptr&, const Ice::Current&); #endif private: IceUtil::ThreadPtr _opVoidThread; IceUtil::Mutex _opVoidMutex; IceUtil::Mutex _mutex; int _opByteSOnewayCallCount; }; #endif