The class standard-i-connection-point-container
provides a complete implementation of the Connection Point protocols. It implements the IConnectionPointContainer
interface and creates connection points for each interface given by the :outgoing-interfaces
initarg.
If a class defined with define-automation-component
macro specifies the :source-interfaces
option or has interfaces with the "source" attribute in its coclass then it must inherit from standard-i-connection-point-container
somehow. define-automation-component
passes the appropriate initargs to initialize the class.
The macro do-connections
can be used to iterate over the connections (sinks) for a given interface.
(define-automation-component clonable-component ()
()
(:interfaces i-clonable)
(:source-interfaces i-clonable-events)
)
(typep (make-instance 'clonable-component)
'standard-i-connection-point-container)
=> t
define-automation-component
standard-i-dispatch
do-connections
define-automation-collection
standard-i-unknown
i-dispatch
LispWorks COM/Automation User Guide and Reference Manual - 14 Feb 2015