Tags and keywords
We start with the simplest possible proxy port case. Note how the
:Delegate
part has no ports, the ProxyPort is "exporting" the functionality of the :Delegate
to the boundary of the owning block:Case:
As an analogy, think of a basic RCA Connector socket on the chassis of a A/V device. From https://en.wikipedia.org/wiki/RCA_connector:
pDelegatesToPart:ProxyPortType
has a BindingConnector to a part :Delegate
, where block Delegate
specialises the InterfaceBlock ProxyPortType
. These are compatible "by type design". No features are shown; in practice, Delegate
would have parts and behaviors to help implement the contract of ProxyPortType
.
As an analogy, think of a basic RCA Connector socket on the chassis of a A/V device. From https://en.wikipedia.org/wiki/RCA_connector:
An RCA connector, sometimes called a phono connector or (in other languages) Cinch connector, is a type of electrical connector commonly used to carry audio and video signals. ... The connection's plug is called an RCA plug or phono plug. ... Devices mount the socket (female jack), consisting of a central hole with a ring of metal around it. The ring on the jack is slightly smaller in diameter and longer than the ring on the plug, allowing the plug's ring to fit tightly over it. ... The RCA connector was initially used for audio signals. ... Connections are made by pushing the cable's plug into the female jack on the device.So our ProxyPort is like the 'female jack on the device' (socket).
Now imagine that there is LOSSLESS wiring from that female jack/socket directly into a part inside that represents the handling of the signal to/from that female jack; that's like the BindingConnector.
We explore next more possible cases for the use of ProxyPorts.