Componentes.Terceros.RemObj.../internal/5.0.23.613/1/RemObjects SDK for Delphi/Source/CodeGen2/Templates/template.async.h
david 2824855ea7 - Modificación del paquete RemObjects_Core_D10 para que sea un paquete de runtime/designtime (antes era designtime sólo)
- Recompilación en Delphi10 de todos los paquetes de RO para generar las DCU's en Lib\D10
- Recompilación en Delphi10 de todos los paquetes de DA para generar las DCU's en Lib\D10

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@9 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 14:06:19 +00:00

224 lines
9.4 KiB
C++

// %UNIT_NAME%
//
/*---------------------------------------------------------------------------}
{ This unit was automatically generated by the RemObjects SDK after reading }
{ the RODL file associated with this project. }
{ }
{ Do not modify this unit manually, or your changes will be lost when this }
{ unit is regenerated the next time you compile the project. }
{---------------------------------------------------------------------------*/
#ifndef %UNIT_NAME%_H
#define %UNIT_NAME%_H
#pragma delphiheader begin
#pragma option push
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp> // Pascal unit
#include <Uroasync.hpp>
// <%%% START REQUIRED_UNITS %%%>
#include <%REQUIRED_UNIT_NAME%.hpp>
// <%%% END REQUIRED_UNITS %%%>
#include "%LIBRARY_NAME%_intf.h"
namespace %NAMESPACE_NAME%
{
// Forward declarations
// <%%% START SERVICES %%%>
__interface I%SERVICE_NAME%_Async; // = interface;
class DELPHICLASS Co%SERVICE_NAME%_Async;
class DELPHICLASS T%SERVICE_NAME%_AsyncProxy;
// <%%% END SERVICES %%%>
// <%%% START SERVICES %%%>
__interface I%SERVICE_NAME%_Async;
typedef System::DelphiInterface<I%SERVICE_NAME%_Async> _di_I%SERVICE_NAME%_Async;
__interface INTERFACE_UUID("%SERVICE_UID%") I%SERVICE_NAME%_Async : public %SERVICE_ANCESTOR_NAME%
{
public:
// <%%% START FUNCTION_OPERATIONS %%%>
virtual void __fastcall Invoke_%OPERATION_NAME%(
// <%%% START IN_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END IN_PARAMS %%%>
) = 0; // pure virtual function - interface only
// <%%% START IF_RESULT_SIMPLE %%%>
virtual %OPERATION_RESULT% __fastcall Retrieve_%OPERATION_NAME%(
// <%%% END IF_RESULT_SIMPLE %%%>
// <%%% START IF_RESULT_COMPLEX %%%>
virtual %OPERATION_RESULT%* __fastcall Retrieve_%OPERATION_NAME%(
// <%%% END IF_RESULT_COMPLEX %%%>
// <%%% START OUT_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END OUT_PARAMS %%%>
) = 0; // pure virtual function - interface only
// <%%% END FUNCTION_OPERATIONS %%%>
// <%%% START PROCEDURE_OPERATIONS %%%>
virtual void _fastcall Invoke_%OPERATION_NAME%(
// <%%% START IN_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END IN_PARAMS %%%>
) = 0; // pure virtual function - interface only
// <%%% START IF_OUT_PARAMS %%%>
virtual void _fastcall Retrieve_%OPERATION_NAME%(
// <%%% START OUT_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END OUT_PARAMS %%%>
) = 0; // pure virtual function - interface only
// <%%% END IF_OUT_PARAMS %%%>
// <%%% END PROCEDURE_OPERATIONS %%%>
};
// Co%SERVICE_NAME%_Async
class DELPHICLASS Co%SERVICE_NAME%_Async;
class Co%SERVICE_NAME%_Async : public System::TObject
{
typedef System::TObject inherited;
public:
static _di_I%SERVICE_NAME%_Async __fastcall Create(const Uroclientintf::_di_IROMessage aMessage,
Uroclientintf::_di_IROTransportChannel aTransportChannel)
{
_di_I%SERVICE_NAME%_Async result;
T%SERVICE_NAME%_AsyncProxy* proxy = new T%SERVICE_NAME%_AsyncProxy(aMessage, aTransportChannel);
if (proxy->QueryInterface(I%SERVICE_NAME%_IID, reinterpret_cast<void**>(&result)) != S_OK)
{
delete proxy;
throw EIntfCastError::EIntfCastError("I%SERVICE_NAME%_Async not supported");
}
return result;
};
static _di_I%SERVICE_NAME%_Async __fastcall Create(const Uroclient::TROMessage* aMessage,
Uroclient::TROTransportChannel *aTransportChannel)
{
_di_IROMessage __Message;
_di_IROTransportChannel __TransportChannel;
if (aMessage->GetInterface(__Message))
{
if (aTransportChannel->GetInterface(__TransportChannel))
return Create(__Message, __TransportChannel);
else
throw EIntfCastError::EIntfCastError("IROTransportChannel not supported");
}
else
{
throw EIntfCastError::EIntfCastError("IROMessage not supported");
}
};
};
class DELPHICLASS T%SERVICE_NAME%_AsyncProxy;
class T%SERVICE_NAME%_AsyncProxy : public %SERVICE_PROXY_ANCESTOR_NAME%, I%SERVICE_NAME%_Async
{
typedef %SERVICE_PROXY_ANCESTOR_NAME% inherited;
protected:
virtual AnsiString __fastcall __GetInterfaceName()
{ return "%SERVICE_NAME%"; }
// <%%% START FUNCTION_OPERATIONS %%%>
virtual void __fastcall Invoke_%OPERATION_NAME%(
// <%%% START IN_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END IN_PARAMS %%%>
);
// <%%% START IF_RESULT_SIMPLE %%%>
virtual %OPERATION_RESULT% __fastcall Retrieve_%OPERATION_NAME%(
// <%%% END IF_RESULT_SIMPLE %%%>
// <%%% START IF_RESULT_COMPLEX %%%>
virtual %OPERATION_RESULT%* __fastcall Retrieve_%OPERATION_NAME%(
// <%%% END IF_RESULT_COMPLEX %%%>
// <%%% START OUT_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END OUT_PARAMS %%%>
);
// <%%% END FUNCTION_OPERATIONS %%%>
// <%%% START PROCEDURE_OPERATIONS %%%>
virtual void _fastcall Invoke_%OPERATION_NAME%(
// <%%% START IN_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END IN_PARAMS %%%>
);
// <%%% START IF_OUT_PARAMS %%%>
virtual void _fastcall Retrieve_%OPERATION_NAME%(
// <%%% START OUT_PARAMS %%%>
// <%%% START IF_PARAM_TYPE_SIMPLE %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE% %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_SIMPLE %%%>
// <%%% START IF_PARAM_TYPE_COMPLEX %%%>
%PARAM_FRONT_MODIFIER% %PARAM_TYPE%* %PARAM_BACK_MODIFIER% %PARAM_NAME%,
// <%%% END IF_PARAM_TYPE_COMPLEX %%%>
// <%%% END OUT_PARAMS %%%>
);
// <%%% END IF_OUT_PARAMS %%%>
// <%%% END PROCEDURE_OPERATIONS %%%>
public:
#pragma option push -w-inl
/* TROProxy.Create */ inline __fastcall virtual T%SERVICE_NAME%_AsyncProxy(const Uroclientintf::_di_IROMessage aMessage, const Uroclientintf::_di_IROTransportChannel aTransportChannel)/* overload */ :
%SERVICE_PROXY_ANCESTOR_NAME%(aMessage, aTransportChannel) {}
#pragma option pop
virtual HRESULT __stdcall QueryInterface(const GUID& IID, void **Obj) {
return inherited::QueryInterface(IID, (void *)Obj); }
virtual ULONG __stdcall AddRef() {
return inherited::_AddRef(); }
virtual ULONG __stdcall Release() {
return inherited::_Release(); }
};
// <%%% END SERVICES %%%>
} // namespace %NAMESPACE_NAME%
using namespace %NAMESPACE_NAME%;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
#endif // %UNIT_NAME%_H