Hi Marc,

I attached a workflow and a html file which demostrate how to use BrowserUI actor. Please put these two files into one directory and open the workflow (xml file). If you run the workflow, you will be guided to a web page for your input. After you type in the web page, submit it and go back to Kepler GUI, you will see the values you just typed in xml format.

You can build your own html and place it anywhere you want. Just remember update the workflow based on your new html url, such as 'file:///Users/jianwu/Kepler/repository/kepler/useful-workflows/BrowserUI/test.html'.

On 10/4/11 1:47 PM, J. Marc Edwards wrote:
Matt:

OK...the BrowserUI looks like an interesting actor option for my workflow. It would be nice to be able to "search" workflow *.kar files to determine if a workflow used a specific actor, in this case, a BrowserUI actor.

I'd like to take a look at some workflows that use this actor.

Do you also have a contact at SDSC with whom I may interact on this query?

Kind regards, Marc

J. Marc Edwards
Lead Architect - Semiconductor Design Portals
Nimbis Services, Inc.
Skype: (919) 747-3775
Cell:  (919) 345-1021
Fax:   (919) 882-8602
[email protected]
www.nimbisservices.com


On 10/04/2011 02:10 PM, Matt Jones wrote:
I believe that the folks at SDSC created the BrowserUI actor for just this purpose -- you write an HTML page containing the input questions you want, configure the BrowserUI to display it at the right point in the workflow, and then gather the output from the configured ports. Ilkay probably has examples of its use.

It would nice to have a Java-based survey actor of some sort with an extensible dialog, but I don't think anyone has built one yet. I could imagine a nice utility that let you configure the output you want, and for each output configure a set of prompts and choose widgets for display, and then get back the output on the ports. This would be a more seamless version of what BrowserUI does without the external browser and without having to write HTML. Any takers who would want to create such an actor?

Matt

On Tue, Oct 4, 2011 at 9:57 AM, J. Marc Edwards <[email protected] <mailto:[email protected]>> wrote:

    Chris:

    What I am thinking of is this...

    I would like for a user to run a workflow "as is" with no
    modification.  As the workflow begins execution, a graphical
    window pops up, prompting the user with a suite of fields that
    the user can then input text data into.  The workflow can then
    process the user input, check it for validity, perhaps then
    re-prompt the user to correct their input.  There would be
    options where the GUI can check for certain files and use that as
    input to the user fields or write out those files based upon the
    user input fields.

    I want to use this as a means for users to configure user
    parameters for external applications:

         ...have a set of default parameters.
        ...have the the user input their own customer parameters for
    the external application.
        ...write out a parameter configuration file that can be used
    on subsequent runs of the external application.
        ...would like to have 8-10 configuration files that could be
    selected from the GUI OR to run the workflow with a specific
    parameter configuration file.

    Regards, Marc

    J. Marc Edwards
    Lead Architect - Semiconductor Design Portals
    Nimbis Services, Inc.
    Skype: (919) 747-3775 <tel:%28919%29%20747-3775>
    Cell: (919) 345-1021 <tel:%28919%29%20345-1021>
    Fax: (919) 882-8602 <tel:%28919%29%20882-8602>
    [email protected]
    <mailto:[email protected]>
    www.nimbisservices.com <http://www.nimbisservices.com>


    On 10/04/2011 11:33 AM, Christopher Brooks wrote:
    Hi Marc,
    In Kepler, the "Convert URL to Image" actor is
    ptolemy.actor.lib.image.URLToImage:
    "The ConvertURLToImage actor reads the URL or path of an image
    and outputs the image in a form that can be used by other actors
    (an image token)."

    Ptolemy includes interfaces to Java Advanced Imaging (JAI) and
    Java Media Framework (JMF).
    There was some work done with OpenCV, but it likely only present
    in the Ptolemy tree.

    As an aside, the Plotter has a facility where the user can draw
    a dataset.  In theory, that facility could be
    used in an actor to allow the user to draw the dataset and then
    output the data.

    Ptolemy can also use the locations of actors in the window as
    input.  We use this with the wireless model of
    computation to indicate how far apart wireless nodes are.

    What sort of graphical input did you have in mind?

    _Christopher



    On 10/4/11 8:25 AM, J. Marc Edwards wrote:
    All:

    I am curious if any graphical input actors that have been
    developed.  I would like to have a graphical actor that I could
    customize for a variety of input from a workflow user.

    Kind regards, Marc
--
    J. Marc Edwards
    Lead Architect - Semiconductor Design Portals
    Nimbis Services, Inc.
    Skype: (919) 747-3775 <tel:%28919%29%20747-3775>
    Cell: (919) 345-1021 <tel:%28919%29%20345-1021>
    Fax: (919) 882-8602 <tel:%28919%29%20882-8602>
    [email protected]
    <mailto:[email protected]>
    www.nimbisservices.com <http://www.nimbisservices.com>



    _______________________________________________
    Kepler-users mailing list
    [email protected]  <mailto:[email protected]>
    http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users

-- Christopher Brooks, PMP University of California
    CHESS Executive Director                      US Mail: 337 Cory Hall
    Programmer/Analyst CHESS/Ptolemy/Trust        Berkeley, CA 94720-1774
    ph:510.643.9841  <tel:510.643.9841>                                 
(Office: 545Q Cory)
home: (F-Tu)707.665.0131 <tel:707.665.0131> cell:707.332.0670 <tel:707.332.0670>

    _______________________________________________
    Kepler-users mailing list
    [email protected]
    <mailto:[email protected]>
    http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users




_______________________________________________
Kepler-users mailing list
[email protected]
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users


--

Best wishes

Sincerely yours

Jianwu Wang
[email protected]

Assistant Project Scientist
Scientific Workflow Automation Technologies (SWAT) Laboratory
San Diego Supercomputer Center
University of California, San Diego
San Diego, U.S.A.

<?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="BrowserUI" class="ptolemy.actor.TypedCompositeActor">
    <property name="_createdBy" class="ptolemy.kernel.attributes.VersionAttribute" value="8.1.devel">
    </property>
    <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:703:7:26:urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:7834:3:5:urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:7845:3:2">
    </property>
    <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:7980:16:2">
    </property>
    <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={264, 141, 941, 687}, maximized=false}">
    </property>
    <property name="_vergilSize" class="ptolemy.actor.gui.SizeAttribute" value="[600, 538]">
    </property>
    <property name="_vergilZoomFactor" class="ptolemy.data.expr.ExpertParameter" value="1.0">
    </property>
    <property name="_vergilCenter" class="ptolemy.data.expr.ExpertParameter" value="{300.0, 269.0}">
    </property>
    <property name="DDF Director" class="ptolemy.domains.ddf.kernel.DDFDirector">
        <property name="timeResolution" class="ptolemy.actor.parameters.SharedParameter" value="1E-10">
        </property>
        <property name="iterations" class="ptolemy.data.expr.Parameter" value="0">
        </property>
        <property name="maximumReceiverCapacity" class="ptolemy.data.expr.Parameter" value="0">
        </property>
        <property name="runUntilDeadlockInOneIteration" class="ptolemy.data.expr.Parameter" value="false">
        </property>
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Gang Zhou</configure></property>
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&#10;            &lt;p&gt; The dynamic dataflow (DDF) domain is a superset of the synchronous&#10;            dataflow(SDF) and Boolean dataflow(BDF) domains. In the SDF domain,&#10;            an actor consumes and produces a fixed number of tokens per firing.&#10;            This static information makes possible compile-time scheduling. In the&#10;            DDF domain, there are few constraints on the production and consumption&#10;            behavior of actors, and the schedulers make no attempt to construct a&#10;            compile-time schedule. Instead, each actor has a set of firing rules&#10;            (patterns) and can be fired if one of them is satisfied, i.e., one&#10;            particular firing pattern forms a prefix of sequences of unconsumed&#10;            tokens at input ports. The canonical actors in the DDF domain include&#10;            Select and Switch, which consume or produce tokens on different channels&#10;            based on the token received from the control port. (In practice, use&#10;            DDFSelect and DDFBooleanSelect in the DDF-specific library instead of&#10;            Select and BooleanSelect in the regular FlowControl library; however,&#10;            Switch and BooleanSwitch in the regular FlowControl library can be&#10;            used in DDF domain.)&lt;/p&gt;&#10;           &#10;            &lt;p&gt; The dynamic scheduler implemented in this director fires all enabled&#10;            and non-deferrable actors once in a basic iteration. A deferrable&#10;            actor is one that will not help one of the downstream actors become&#10;            enabled because that downstream actor either already has enough tokens on&#10;            the channel connecting those two actors or is waiting for tokens on&#10;            another channel. If no actor fires so far, which means there is no&#10;            enabled and non-deferrable actor, then among all enabled and deferrable&#10;            actors, this director fires those which have the smallest maximum number&#10;            of tokens on their output channels which satisfy the demand of destination&#10;            actors. If still no actor fires, then there is no enabled actor. A user&#10;            can treat several such basic iterations as a single iteration by adding&#10;            a parameter with name &lt;i&gt;requiredFiringsPerIteration&lt;/i&gt; to an actor&#10;            (which is often a sink actor or an actor directly connected to output port&#10;            of the composite actor) and specifying the number of times this actor must&#10;            be fired in a single iteration. If the value of the parameter&#10;            &lt;i&gt;runUntilDeadlockInOneIteration&lt;/i&gt; is a BooleanToken with value true,&#10;            one single iteration consists of repeating the basic iteration until&#10;            deadlock is reached (thus overriding the previous definition of one&#10;            iteration), which is the status of the model where all active&#10;            actors under the control of this director are unable to fire because&#10;            their firing rules are not satisfied. However, they may be able to fire&#10;            again during next iteration when tokens are transferred in from an outside&#10;            domain. Note &lt;i&gt;runUntilDeadlockInOneIteration&lt;/i&gt; can be set to true&#10;            only when this director is not on the top level.&lt;/p&gt;&#10;           &#10;            &lt;p&gt; The algorithm implementing one basic iteration goes like this:&#10;            &lt;pre&gt;&#10;            E = set of enabled actors&#10;            D = set of deferrable enabled actors&#10;            &lt;/pre&gt;&#10;            One basic(default) iteration consists of:&#10;            &lt;pre&gt;&#10;            if (E\D != empty set) {&#10;            fire (E\D)&#10;            } else if (D != empty set) {&#10;            fire minimax(D)&#10;            } else {&#10;            declare deadlock&#10;            }&#10;            &lt;/pre&gt;&#10;            The function &quot;minimax(D)&quot; returns a subset of D with the smallest&#10;            maximum number of tokens on their output channels which satisfy the&#10;            demand of destination actors.&lt;/p&gt;&#10;           &#10;            &lt;p&gt; Note that any SDF model can be run with a DDF Director. However, the&#10;            notion of iteration is different. One could try to imitate the SDF&#10;            iteration in the DDF domain by controlling the number of firings in one&#10;            iteration for some actors, such as requiring a plotter to plot a fixed&#10;            number of points in each iteration.&lt;/p&gt;&#10;           &#10;            &lt;p&gt; In the DDF domain, the firing rule of any actor is specified by the token&#10;            consumption rates of its input ports. A general DDF actor could change&#10;            the consumption rates of its input ports after each firing of this actor.&#10;            For multiports, an array token could be used to specify different rates&#10;            for different channels connected to the same multiport. Note that in SDF,&#10;            all channels connected to the same multiport have the same rate.&lt;/p&gt;&#10;           &#10;            &lt;p&gt; Based on DDFSimpleSched in Ptolemy Classic, by Edward Lee.&#10;            See E. A. Lee et al., &quot;The Almagest,&quot; documentation for Ptolemy Classic,&#10;            Vol. 1, Chapter 7, 1997.&lt;/p&gt;&#10;           &#10;        </configure></property>
<property name="prop:maximumReceiverCapacity" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A Parameter representing the maximum capacity of each receiver controlled by this director. This is an integer that defaults to 0, which means the queue in each receiver is unbounded. To specify bounded queues, set this to a positive integer. </configure></property>
<property name="prop:iterations" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Specify the number of times a workflow is iterated. By default, this parameter is set to &quot;0&quot;. Note that &quot;0&quot; does not mean &quot;no iterations.&quot; Rather, &quot;0&quot; means that the workflow will iterate forever. Values greater than zero specify the actual number of times the director should execute the entire workflow. </configure></property>
<property name="prop:runUntilDeadlockInOneIteration" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A parameter indicating whether one iteration consists of repeated basic iterations until deadlock. If this parameter is true, the model will be executed until deadlock in one iteration. The default value is a BooleanToken with the value false. It cannot be set to true if this director is at the top level.</configure></property>
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org:director:5:1">
        </property>
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.domains.ddf.kernel.DDFDirector">
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:directorclass:5:1">
            </property>
        </property>
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#Director">
        </property>
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#Director">
        </property>
        <property name="_location" class="ptolemy.kernel.util.Location" value="{45, 110}">
        </property>
    </property>
    <entity name="BrowserUI" class="org.sdm.spa.BrowserUI">
        <property name="fileOrURL" class="ptolemy.data.expr.FileParameter" value="d:/test2.html">
        </property>
        <property name="file extension" class="ptolemy.data.expr.StringParameter" value="">
        </property>
        <property name="portConfiguration" class="ptolemy.data.expr.StringParameter" value="">
            <property name="portConfiguration" class="ptolemy.actor.gui.style.TextStyle">
                <property name="height" class="ptolemy.data.expr.Parameter" value="10">
                </property>
                <property name="width" class="ptolemy.data.expr.Parameter" value="30">
                </property>
            </property>
        </property>
        <property name="use for display" class="ptolemy.data.expr.Parameter" value="false">
        </property>
        <property name="hasTrigger" class="ptolemy.data.expr.Parameter" value="false">
        </property>
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Ilkay Altintas, Efrat Jaeger and Kai Lin</configure></property>
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The BrowserUI actor displays text/HTML in the system's default browser, allowing users to interact with the content during workflow execution. The actor outputs arrays of user-selected &quot;(name, value)&quot; pairs in XML format.&lt;/p&gt;&#10;&#10;&lt;p&gt;The actor can also be used to simply display a file in a Web browser, which is useful for displaying the output of legacy applications. Select the useForDisplay parameter to use the BrowserUI actor as a browser viewer with no output port.&lt;/p&gt;&#10;&#10;&lt;p&gt;The actor accepts either a URL/file path or a string of HTML/text. If content is input as a string, select a file type (e.g., html or xml) with the fileExtensionParameter.&lt;/p&gt;&#10;&#10;&lt;p&gt;The BrowserUI actor is often used in conjunction with the SRBCreateQueryConditions and SRBCreateQueryInterface actors to create a set of user-specified query conditions.&lt;/p&gt;</configure></property>
<property name="port:trigger" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The port to trigger the actor in case there are no other input ports. By default, this port is hidden.</configure></property>
<property name="port:connected" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>This port is used only for scheduling the actor. Activate the hasTrigger parameter to display the trigger port.</configure></property>
<property name="port:xmlOutput" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An output port that broadcasts an array of user-selected xml &quot;(name, value)&quot; pairs.</configure></property>
<property name="port:fileOrURL" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An input port that accepts the file name or URL of a file to be read. The value can also be specified with the fileOrURL parameter.</configure></property>
<property name="port:fileContent" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An input port that accepts a string of content to display. Select a file extension that matches the content (e.g., .html,.xml or .svg) with the file extension parameter.</configure></property>
<property name="prop:file extension" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The extension of the input content: .html, .xml, .txt, .xsl, or .svg. Specify this parameter when content is input via the fileContent input port.</configure></property>
<property name="prop:use for display" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Select this setting to use the actor solely for display. The output port will be turned off. By default, the setting is off.</configure></property>
<property name="prop:portConfiguration" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The output port configuration. The actor will create the described ports. Each port should be represented on a separate line as portName portType  (e.g., height int).</configure></property>
<property name="prop:hasTrigger" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Specify whether to activate a trigger port or not. The default is off.</configure></property>
<property name="prop:fileOrURL" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The file name or URL of a file to be read. The value can also be specified via the fileOrURL port.</configure></property>
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org:actor:240:1">
        </property>
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="org.sdm.spa.BrowserUI">
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:1066:1">
            </property>
        </property>
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#ExternalGraphicalOutputActor">
        </property>
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#TextualOutput">
        </property>
        <property name="_location" class="ptolemy.kernel.util.Location" value="[265.0, 185.0]">
        </property>
        <property name="" class="ptolemy.vergil.basic.DocAttribute">
            <property name="description" class="ptolemy.kernel.util.StringAttribute" value="&lt;p&gt;The BrowserUI actor displays text/HTML in the system's default browser, allowing users to interact with the content during workflow execution. The actor outputs arrays of user-selected &quot;(name, value)&quot; pairs in XML format.&lt;/p&gt;&#10;&#10;&lt;p&gt;The actor can also be used to simply display a file in a Web browser, which is useful for displaying the output of legacy applications. Select the useForDisplay parameter to use the BrowserUI actor as a browser viewer with no output port.&lt;/p&gt;&#10;&#10;&lt;p&gt;The actor accepts either a URL/file path or a string of HTML/text. If content is input as a string, select a file type (e.g., html or xml) with the fileExtensionParameter.&lt;/p&gt;&#10;&#10;&lt;p&gt;The BrowserUI actor is often used in conjunction with the SRBCreateQueryConditions and SRBCreateQueryInterface actors to create a set of user-specified query conditions.&lt;/p&gt;">
            </property>
            <property name="author" class="ptolemy.kernel.util.StringAttribute" value="Ilkay Altintas, Efrat Jaeger and Kai Lin">
            </property>
            <property name="version" class="ptolemy.kernel.util.StringAttribute" value="null">
            </property>
            <property name="fileOrURL (parameter)" class="ptolemy.data.expr.StringParameter" value="The file name or URL of a file to be read. The value can also be specified via the fileOrURL port.">
            </property>
            <property name="file extension (parameter)" class="ptolemy.data.expr.StringParameter" value="The extension of the input content: .html, .xml, .txt, .xsl, or .svg. Specify this parameter when content is input via the fileContent input port.">
            </property>
            <property name="portConfiguration (parameter)" class="ptolemy.data.expr.StringParameter" value="The output port configuration. The actor will create the described ports. Each port should be represented on a separate line as portName portType  (e.g., height int).">
            </property>
            <property name="use for display (parameter)" class="ptolemy.data.expr.StringParameter" value="Select this setting to use the actor solely for display. The output port will be turned off. By default, the setting is off.">
            </property>
            <property name="hasTrigger (parameter)" class="ptolemy.data.expr.StringParameter" value="Specify whether to activate a trigger port or not. The default is off.">
            </property>
            <property name="fileOrURL (port)" class="ptolemy.kernel.util.StringAttribute" value="An input port that accepts the file name or URL of a file to be read. The value can also be specified with the fileOrURL parameter.">
            </property>
            <property name="fileContent (port)" class="ptolemy.kernel.util.StringAttribute" value="An input port that accepts a string of content to display. Select a file extension that matches the content (e.g., .html,.xml or .svg) with the file extension parameter.">
            </property>
            <property name="xmlOutput (port)" class="ptolemy.kernel.util.StringAttribute" value="An output port that broadcasts an array of user-selected xml &quot;(name, value)&quot; pairs.">
            </property>
            <property name="trigger (port)" class="ptolemy.kernel.util.StringAttribute" value="The port to trigger the actor in case there are no other input ports. By default, this port is hidden.">
            </property>
            <property name="connected (port)" class="ptolemy.kernel.util.StringAttribute" value="This port is used only for scheduling the actor. Activate the hasTrigger parameter to display the trigger port.">
            </property>
        </property>
        <port name="trigger" class="ptolemy.actor.TypedIOPort">
            <property name="input"/>
            <property name="_hide" class="ptolemy.data.expr.SingletonParameter" value="true">
            </property>
        </port>
    </entity>
    <entity name="String Constant" class="ptolemy.actor.lib.StringConst">
        <property name="firingCountLimit" class="ptolemy.data.expr.Parameter" value="1">
        </property>
        <property name="NONE" class="ptolemy.data.expr.Parameter" value="0">
        </property>
        <property name="value" class="ptolemy.data.expr.Parameter" value="test.html">
        </property>
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Edward Lee</configure></property>
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The StringConstant actor outputs a string specified via the actor's value parameter.&lt;/p&gt;&#10;&#10;&lt;p&gt;Specifying strings with the StringConstant actor is convenient, as the actor does not require that strings be surrounded by quotes. The actor is often used to specify file paths, which can be selected using the Browse button available in the actor's parameters.&lt;/p&gt;&#10;&#10;&lt;p&gt;Specified string values can include references to parameters within scope (i.e., parameters defined at the same level of the hierarchy or higher). &lt;/p&gt;&#10;&#10;&lt;p&gt;NOTE: If using a PN Director, the 'firingCountLimit' parameter is often set to a finite integer (e.g. '1') so that the workflow will terminate. &lt;/p&gt;&#10;&#10;</configure></property>
<property name="port:output" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>An output port that broadcasts a string constant specified by the value parameter.  </configure></property>
<property name="port:trigger" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A multiport that has no declared type (in other words, the port can accept any data type: double, int, array, etc.) If the port is connected, the actor will not fire until the trigger port receives an input token. Connecting the port is optional, but useful when scheduling the actor to perform at a certain time. </configure></property>
<property name="prop:firingCountLimit" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The limit on the number of times the actor will fire. The default value is 'NONE', meaning there is no limit on the number of time the constant will be provided to the output port. Any integer can be provided as a value for this parameter.</configure></property>
<property name="prop:value" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The value produced by the actor. Specified strings do not require enclosing quotes. (To include a '$' sign in the string, enter '$$'.)</configure></property>
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org/ns/:7980:15:1">
        </property>
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.StringConst">
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:1052:1">
            </property>
        </property>
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#StringFunctionActor">
        </property>
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#Constant">
        </property>
        <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="{65.0, 205.0}">
        </property>
        <property name="derivedFrom" class="org.kepler.moml.NamedObjIdReferralList" value="null:urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:703:11:6:urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:7834:2:1:urn:lsid:gamma.msi.ucsb.edu/OpenAuth/:7845:2:1">
        </property>
    </entity>
    <entity name="Display" class="ptolemy.actor.lib.gui.Display">
        <property name="_windowProperties" class="ptolemy.actor.gui.WindowPropertiesAttribute" value="{bounds={210, 268, 359, 243}, maximized=false}">
        </property>
        <property name="_paneSize" class="ptolemy.actor.gui.SizeAttribute" value="[343, 186]">
        </property>
        <property name="rowsDisplayed" class="ptolemy.data.expr.Parameter" value="10">
        </property>
        <property name="columnsDisplayed" class="ptolemy.data.expr.Parameter" value="40">
        </property>
        <property name="suppressBlankLines" class="ptolemy.data.expr.Parameter" value="false">
        </property>
        <property name="title" class="ptolemy.data.expr.StringParameter" value="">
        </property>
<property name="KeplerDocumentation" class="ptolemy.vergil.basic.KeplerDocumentationAttribute">
<property name="description" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="author" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Yuhong Xiong, Edward A. Lee</configure></property>
<property name="version" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>null</configure></property>
<property name="userLevelDocumentation" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>&lt;p&gt;The Display actor reads tokens of any type via its input multiport, and displays each token on a separate line in a text display window.&lt;/p&gt;&#10;&#10;&lt;p&gt;Specify the size of the text display window with the rowsDisplayed and columnsDisplayed parameters. Simply resizing the window onscreen does not persistently change the size when the workflow is saved, closed, and then re-opened. &lt;/p&gt;&#10;&#10;&lt;p&gt;If the input is a string token, then the actor strips the surrounding quotation marks before displaying the value.&lt;/p&gt; &#10;&#10;&lt;p&gt;Select the suppressBlankLines parameter to specify that the actor not add blank lines to the display. By default, the actor will add blank lines.&lt;/p&gt;&#10;&#10;&lt;p&gt;Note: this actor can consume large amounts of memory. It is not advisable to use it to display large output streams.&lt;/p&gt;</configure></property>
<property name="port:input" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>A multiport that accepts tokens of any type.</configure></property>
<property name="prop:suppressBlankLines" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>Specify whether the actor should display blank lines (the default) or suppress them.</configure></property>
<property name="prop:rowsDisplayed" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The vertical size of the display, in rows. The value is an integer that defaults to 10.</configure></property>
<property name="prop:columnsDisplayed" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The horizontal size of the display, in columns. The value is an integer that defaults to 40.</configure></property>
<property name="prop:title" class="ptolemy.kernel.util.ConfigurableAttribute"><configure>The title of the text display window. If specified, the value will appear in the title bar of the text display window.</configure></property>
</property>        <property name="entityId" class="org.kepler.moml.NamedObjId" value="urn:lsid:kepler-project.org:actor:7:1">
        </property>
        <property name="class" class="ptolemy.kernel.util.StringAttribute" value="ptolemy.actor.lib.gui.Display">
            <property name="id" class="ptolemy.kernel.util.StringAttribute" value="urn:lsid:kepler-project.org:class:883:1">
            </property>
        </property>
        <property name="semanticType00" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:1:1#TextualOutputActor">
        </property>
        <property name="semanticType11" class="org.kepler.sms.SemanticType" value="urn:lsid:localhost:onto:2:1#TextualOutput">
        </property>
        <property name="_location" class="ptolemy.kernel.util.Location" value="[445.0, 185.0]">
        </property>
    </entity>
    <relation name="relation2" class="ptolemy.actor.TypedIORelation">
    </relation>
    <relation name="relation" class="ptolemy.actor.TypedIORelation">
    </relation>
    <link port="BrowserUI.fileOrURL" relation="relation"/>
    <link port="BrowserUI.xmlOutput" relation="relation2"/>
    <link port="String Constant.output" relation="relation"/>
    <link port="Display.input" relation="relation2"/>
</entity>
Title: New Document
Please enter your name:
_______________________________________________
Kepler-users mailing list
[email protected]
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users

Reply via email to