If I have
a CompositeActor containing just an input port and a display sink and
connect that to a DE domain model it gives other results than connecting the
display directly. See attached moml for an example.
Can someone tell me
if this is intended and why. How can I avoid that?
Thanks
andre
<?xml version="1.0" standalone="no"?> <!DOCTYPE entity PUBLIC "-//UC Berkeley//DTD MoML 1//EN" "http://ptolemy.eecs.berkeley.edu/xml/dtd/MoML_1.dtd"> <entity name="CompositeActorSink" class="ptolemy.actor.TypedCompositeActor"> <property name="_createdBy" class="ptolemy.kernel.attributes.VersionAttribute" value="5.0.1"> </property> <property name="DE Director" class="ptolemy.domains.de.kernel.DEDirector"> <property name="_location" class="ptolemy.kernel.util.Location" value="{90, 35}"> </property> </property> <property name="Annotation" class="ptolemy.vergil.kernel.attributes.TextAttribute"> <property name="text" class="ptolemy.kernel.util.StringAttribute" value="These two simple models are similar except the display sink. CompositeActorX simply sends a parameter to the output port. While the top model displays both outputs, the lower one just displays the one from the first actor. WHY?"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{470.0, 105.0}"> </property> </property> <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={-4, -4, 1288, 774}, maximized=true}"> </property> <property name="_vergilSize" class="ptolemy.actor.gui.SizeAttribute" value="[1073, 656]"> </property> <property name="_vergilZoomFactor" class="ptolemy.data.expr.ExpertParameter" value="1.0"> </property> <property name="_vergilCenter" class="ptolemy.data.expr.ExpertParameter" value="{536.5, 328.0}"> </property> <entity name="CompositeActorDisplay" class="ptolemy.actor.TypedCompositeActor"> <property name="_location" class="ptolemy.kernel.util.Location" value="[402.5, 372.5]"> </property> <port name="port" class="ptolemy.actor.TypedIOPort"> <property name="input"/> <property name="multiport"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{20.0, 200.0}"> </property> </port> <entity name="Display" class="ptolemy.actor.lib.gui.Display"> <property name="title" class="ptolemy.kernel.util.StringAttribute" value="CompositeActorDisplay"> </property> <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={801, 429, 290, 227}, maximized=false}"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{135, 200}"> </property> </entity> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <link port="port" relation="relation"/> <link port="Display.input" relation="relation"/> </entity> <entity name="SingleEvent" class="ptolemy.domains.de.lib.SingleEvent"> <property name="SingleEventIcon" class="ptolemy.vergil.icon.EditorIcon"> <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={292, 266, 815, 518}, maximized=false}"> </property> <property name="_vergilSize" class="ptolemy.actor.gui.SizeAttribute" value="[600, 400]"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="[62.5, 372.5]"> </property> </entity> <entity name="CompositeActor3" class="ptolemy.actor.TypedCompositeActor"> <property name="_location" class="ptolemy.kernel.util.Location" value="[225.0, 95.0]"> </property> <property name="parm" class="ptolemy.data.expr.Parameter" value="1"> <property name="_hideName" class="ptolemy.kernel.util.SingletonAttribute"> </property> <property name="_icon" class="ptolemy.vergil.icon.ValueIcon"> <property name="_color" class="ptolemy.actor.gui.ColorAttribute" value="{0.0, 0.0, 1.0, 1.0}"> </property> </property> <property name="_smallIconDescription" class="ptolemy.kernel.util.SingletonConfigurableAttribute"> <configure> <svg> <text x="20" style="font-size:14; font-family:SansSerif; fill:blue" y="20">-P-</text> </svg> </configure> </property> <property name="_editorFactory" class="ptolemy.vergil.toolbox.VisibleParameterEditorFactory"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="[95.0, 70.0]"> </property> </property> <port name="port2" class="ptolemy.actor.TypedIOPort"> <property name="output"/> <property name="_location" class="ptolemy.kernel.util.Location" value="[195.0, 150.0]"> </property> </port> <port name="port" class="ptolemy.actor.TypedIOPort"> <property name="input"/> <property name="multiport"/> <property name="_location" class="ptolemy.kernel.util.Location" value="[25.0, 150.0]"> </property> </port> <entity name="Const" class="ptolemy.actor.lib.Const"> <property name="value" class="ptolemy.data.expr.Parameter" value="parm"> </property> <doc>Create a constant sequence.</doc> <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon"> <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value"> </property> <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="[105.0, 150.0]"> </property> </entity> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation2" class="ptolemy.actor.TypedIORelation"> </relation> <link port="port2" relation="relation2"/> <link port="port" relation="relation"/> <link port="Const.output" relation="relation2"/> <link port="Const.trigger" relation="relation"/> </entity> <entity name="SingleEvent2" class="ptolemy.domains.de.lib.SingleEvent"> <property name="SingleEventIcon" class="ptolemy.vergil.icon.EditorIcon"> <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={292, 266, 815, 518}, maximized=false}"> </property> <property name="_vergilSize" class="ptolemy.actor.gui.SizeAttribute" value="[600, 400]"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="[57.5, 147.5]"> </property> </entity> <entity name="Display" class="ptolemy.actor.lib.gui.Display"> <property name="title" class="ptolemy.kernel.util.StringAttribute" value="PlainDisplay"> </property> <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={802, 200, 290, 227}, maximized=false}"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="[402.5, 142.5]"> </property> </entity> <entity name="CompositeActor1" class="ptolemy.actor.TypedCompositeActor"> <property name="_location" class="ptolemy.kernel.util.Location" value="[227.5, 317.5]"> </property> <property name="parm" class="ptolemy.data.expr.Parameter" value="1"> <property name="_hideName" class="ptolemy.kernel.util.SingletonAttribute"> </property> <property name="_icon" class="ptolemy.vergil.icon.ValueIcon"> <property name="_color" class="ptolemy.actor.gui.ColorAttribute" value="{0.0, 0.0, 1.0, 1.0}"> </property> </property> <property name="_smallIconDescription" class="ptolemy.kernel.util.SingletonConfigurableAttribute"> <configure> <svg> <text x="20" style="font-size:14; font-family:SansSerif; fill:blue" y="20">-P-</text> </svg> </configure> </property> <property name="_editorFactory" class="ptolemy.vergil.toolbox.VisibleParameterEditorFactory"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{105.0, 80.0}"> </property> </property> <port name="port2" class="ptolemy.actor.TypedIOPort"> <property name="output"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{205.0, 160.0}"> </property> </port> <port name="port" class="ptolemy.actor.TypedIOPort"> <property name="input"/> <property name="multiport"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{35.0, 160.0}"> </property> </port> <entity name="Const" class="ptolemy.actor.lib.Const"> <property name="value" class="ptolemy.data.expr.Parameter" value="parm"> </property> <doc>Create a constant sequence.</doc> <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon"> <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value"> </property> <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{115.0, 160.0}"> </property> </entity> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation2" class="ptolemy.actor.TypedIORelation"> </relation> <link port="port2" relation="relation2"/> <link port="port" relation="relation"/> <link port="Const.output" relation="relation2"/> <link port="Const.trigger" relation="relation"/> </entity> <entity name="CompositeActor2" class="ptolemy.actor.TypedCompositeActor"> <property name="_location" class="ptolemy.kernel.util.Location" value="[227.5, 427.5]"> </property> <property name="parm" class="ptolemy.data.expr.Parameter" value="2"> <property name="_hideName" class="ptolemy.kernel.util.SingletonAttribute"> </property> <property name="_icon" class="ptolemy.vergil.icon.ValueIcon"> <property name="_color" class="ptolemy.actor.gui.ColorAttribute" value="{0.0, 0.0, 1.0, 1.0}"> </property> </property> <property name="_smallIconDescription" class="ptolemy.kernel.util.SingletonConfigurableAttribute"> <configure> <svg> <text x="20" style="font-size:14; font-family:SansSerif; fill:blue" y="20">-P-</text> </svg> </configure> </property> <property name="_editorFactory" class="ptolemy.vergil.toolbox.VisibleParameterEditorFactory"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{105.0, 80.0}"> </property> </property> <port name="port2" class="ptolemy.actor.TypedIOPort"> <property name="output"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{205.0, 160.0}"> </property> </port> <port name="port" class="ptolemy.actor.TypedIOPort"> <property name="input"/> <property name="multiport"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{35.0, 160.0}"> </property> </port> <entity name="Const" class="ptolemy.actor.lib.Const"> <property name="value" class="ptolemy.data.expr.Parameter" value="parm"> </property> <doc>Create a constant sequence.</doc> <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon"> <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value"> </property> <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{115.0, 160.0}"> </property> </entity> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation2" class="ptolemy.actor.TypedIORelation"> </relation> <link port="port2" relation="relation2"/> <link port="port" relation="relation"/> <link port="Const.output" relation="relation2"/> <link port="Const.trigger" relation="relation"/> </entity> <entity name="CompositeActor4" class="ptolemy.actor.TypedCompositeActor"> <property name="_location" class="ptolemy.kernel.util.Location" value="[225.0, 210.0]"> </property> <property name="parm" class="ptolemy.data.expr.Parameter" value="2"> <property name="_hideName" class="ptolemy.kernel.util.SingletonAttribute"> </property> <property name="_icon" class="ptolemy.vergil.icon.ValueIcon"> <property name="_color" class="ptolemy.actor.gui.ColorAttribute" value="{0.0, 0.0, 1.0, 1.0}"> </property> </property> <property name="_smallIconDescription" class="ptolemy.kernel.util.SingletonConfigurableAttribute"> <configure> <svg> <text x="20" style="font-size:14; font-family:SansSerif; fill:blue" y="20">-P-</text> </svg> </configure> </property> <property name="_editorFactory" class="ptolemy.vergil.toolbox.VisibleParameterEditorFactory"> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{105.0, 80.0}"> </property> </property> <port name="port2" class="ptolemy.actor.TypedIOPort"> <property name="output"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{205.0, 160.0}"> </property> </port> <port name="port" class="ptolemy.actor.TypedIOPort"> <property name="input"/> <property name="multiport"/> <property name="_location" class="ptolemy.kernel.util.Location" value="{35.0, 160.0}"> </property> </port> <entity name="Const" class="ptolemy.actor.lib.Const"> <property name="value" class="ptolemy.data.expr.Parameter" value="parm"> </property> <doc>Create a constant sequence.</doc> <property name="_icon" class="ptolemy.vergil.icon.BoxedValueIcon"> <property name="attributeName" class="ptolemy.kernel.util.StringAttribute" value="value"> </property> <property name="displayWidth" class="ptolemy.data.expr.Parameter" value="60"> </property> </property> <property name="_location" class="ptolemy.kernel.util.Location" value="{115.0, 160.0}"> </property> </entity> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation2" class="ptolemy.actor.TypedIORelation"> </relation> <link port="port2" relation="relation2"/> <link port="port" relation="relation"/> <link port="Const.output" relation="relation2"/> <link port="Const.trigger" relation="relation"/> </entity> <relation name="relation3" class="ptolemy.actor.TypedIORelation"> <vertex name="vertex1" value="[142.5, 372.5]"> </vertex> </relation> <relation name="relation5" class="ptolemy.actor.TypedIORelation"> <vertex name="vertex1" value="[142.5, 147.5]"> </vertex> </relation> <relation name="relation" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation2" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation4" class="ptolemy.actor.TypedIORelation"> </relation> <relation name="relation6" class="ptolemy.actor.TypedIORelation"> </relation> <link port="CompositeActorDisplay.port" relation="relation2"/> <link port="CompositeActorDisplay.port" relation="relation4"/> <link port="SingleEvent.output" relation="relation3"/> <link port="CompositeActor3.port2" relation="relation"/> <link port="CompositeActor3.port" relation="relation5"/> <link port="SingleEvent2.output" relation="relation5"/> <link port="Display.input" relation="relation"/> <link port="Display.input" relation="relation6"/> <link port="CompositeActor1.port2" relation="relation2"/> <link port="CompositeActor1.port" relation="relation3"/> <link port="CompositeActor2.port2" relation="relation4"/> <link port="CompositeActor2.port" relation="relation3"/> <link port="CompositeActor4.port2" relation="relation6"/> <link port="CompositeActor4.port" relation="relation5"/> </entity>