From a8fbc898222a0ecd2c98987d0ae44661f20c0913 Mon Sep 17 00:00:00 2001 From: vwheeler Date: Fri, 18 Apr 2014 22:09:40 +0000 Subject: [PATCH] Author:vwheeler Date:2014-04-18T21:44:15.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@1328 abb3cda0-5349-4a8f-a601-0c33ac3a8c38 --- .../eiffelcom-interface-content/interfaces.wiki | 11 ++++------- .../wizards-command-line-options.wiki | 4 ++-- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-library/eiffelcom-interface-content/interfaces.wiki b/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-library/eiffelcom-interface-content/interfaces.wiki index b8272127..f22c2aab 100644 --- a/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-library/eiffelcom-interface-content/interfaces.wiki +++ b/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-library/eiffelcom-interface-content/interfaces.wiki @@ -1,11 +1,11 @@ [[Property:title|Interfaces]] [[Property:weight|0]] [[Property:uuid|7f65c561-cac3-6870-5d1c-6f73beeed872]] -COM interfaces have several facets. First, an interface is a deferred, or an abstract, class. This means that an interface is a specification of a type. Second, an interface pointer represents a COM object, which is callable by a client application. An object can expose several interfaces, or represent several types. - +COM interfaces have several facets. First, an interface is a deferred class ("abstract class" in C++ terms). This means that an interface is a specification of a type. Second, an interface pointer represents a COM object, which is callable by a client application. An object can expose several interfaces, or represent several types. + ==ECOM_INTERFACE== -For each interface listed in a type library, the EiffelCOM wizard generates a deferred class and two effective classes: a proxy of an interface pointer, or a client side class, and a stub of an interface pointer, or a server side class. The deferred interface class inherits from [[ref:libraries/com/reference/ecom_interface_chart|ECOM_INTERFACE]] and has a deferred feature per each interface function. Both effective classes, or implemented interfaces, inherit from the deferred class and implement its functions. The functions of the interface proxy calls the underlying C layer, which in turn calls the COM component while the functions of the interface stub implement the component functionality. +For each interface listed in a type library, the EiffelCOM wizard generates a deferred class and two effective classes: a proxy of an interface pointer, or a client side class, and a stub of an interface pointer, or a server side class. The deferred interface class inherits from [[ref:libraries/com/reference/ecom_interface_chart|ECOM_INTERFACE]] and has one deferred feature for each interface function. Both effective classes, or implemented interfaces, inherit from the deferred class and implement its functions. The functions of the interface proxy calls the underlying C layer, which in turn calls the COM component while the functions of the interface stub implement the component functionality. [[ref:libraries/com/reference/ecom_interface_chart|ECOM_INTERFACE]] holds a pointer to the underlying COM interface. @@ -19,8 +19,5 @@ which queries a COM component internally. Every interface proxy class inherits f ==ECOM_STUB== -[[ref:libraries/com/reference/ecom_stub_chart|ECOM_STUB]] inherits from [[ref:libraries/com/reference/ecom_interface_chart|ECOM_INTERFACE]], and exposes the feature [[ref:libraries/com/reference/ecom_stub_chart|create_item]] which allows creating the underlying COM object. - - - +[[ref:libraries/com/reference/ecom_stub_chart|ECOM_STUB]] inherits from [[ref:libraries/com/reference/ecom_interface_chart|ECOM_INTERFACE]], and exposes the feature [[ref:libraries/com/reference/ecom_stub_chart|create_item]] which allows creating the underlying COM object. diff --git a/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-wizard/eiffelcom-wizard-reference/wizards-command-line-options.wiki b/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-wizard/eiffelcom-wizard-reference/wizards-command-line-options.wiki index f05c88fe..9887fc3d 100644 --- a/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-wizard/eiffelcom-wizard-reference/wizards-command-line-options.wiki +++ b/documentation/current/platform-specifics/microsoft-windows/com/eiffelcom-wizard/eiffelcom-wizard-reference/wizards-command-line-options.wiki @@ -13,8 +13,8 @@ The list of options is the following: * '''--server, -s''' : Build new COM component as described by . * '''--eiffel, -e''' : Add COM interface to Eiffel project with project file (*.epr) . * '''--ace, -a''' : Path to ecf file of Eiffel project to be added a COM interface. Use together with '--eiffel'. -* '''--facade, -f''' >FACADE_CLASS>: Name of facade class to generate IDL from. Use together with '--eiffel'. -* '''--cluster, -u''' >CLUSTER>: Name of facade class cluster. Use together with '--eiffel'. +* '''--facade, -f''' : Name of facade class to generate IDL from. Use together with '--eiffel'. +* '''--cluster, -u''' : Name of facade class cluster. Use together with '--eiffel'. * '''--outofprocess, -o''': Access or build out of process component. By default access or build in-process component (DLL). * '''--compilec, -i''': Compile generated C code. * '''--compileeiffel, -l''': Compile generated Eiffel code. Implies '--compilec'.