Company Events Academic Community Support Solutions Products & Services Contact NI MyNI

Statechart Documentation Structure (Statechart Module)

LabVIEW 2010 Statechart Module Help

Edition Date: June 2013

Part Number: 372103F-01

»View Product Info
Download Help (Windows Only)

Statechart documentation you generate can vary in appearance depending on the components of the statechart and any modifications you make to the NI_Statechart_Documentation_Tool.xslt file. In general, information in the documentation XML file appears in order of the location of each statechart component. For example, the file begins with information about the statechart components that occupy the top level of the statechart diagram. The XML file then lists any components of the statechart that the top-level components contain, as well as sub-components of those components, until the file lists all of the components of the statechart diagram.

The generated XML file presents the following information about the statechart:

  • Statechart Description—Displays a description of the statechart. This description corresponds to the Description field of the Documentation page of the Project Library Properties dialog box for the statechart. The text in this field also appears in the Context Help window when you move the cursor over the statechart in the Project Explorer window.
  • Statechart Type Definitions—Displays the input, output, and state data of the statechart corresponding to the Inputs.ctl, Outputs.ctl, and StateData.ctl type definitions.
  • Trigger List—Lists all triggers in the statechart and the group(s) to which they belong. When you configure a transition or static reaction to react to a group, any trigger in that group can initiate the associated transition or static reaction.

    The Trigger List adheres to the following structure:

    ALL List of all triggers in the statechart
    Name of Group 1 List of triggers and groups in Group 1
    Name of Group N List of triggers and groups in Group N
  • Code Generation Properties—Displays the code generation settings for the statechart. This information corresponds to the options on the Statechart Code Generation page of the VI Properties dialog box.
    • Execution Target—Displays the target on which the statechart executes.
    • Usage—Indicates whether the statechart is synchronous or asynchronous. If the statechart executes on an FPGA target, Usage indicates whether the statechart runs in a single-cycle Timed Loop application or if the statechart runs in an internal loop.
    • Queue Settings—(Asynchronous statecharts only) Displays the following information relating to the trigger queue type of the statechart.
      • Type—Displays the type of trigger queue the statechart uses.
        • LV Queue—Indicates that the external queue is a LabVIEW queue.
        • RT FIFO(Real-Time Module) Indicates that the external queue is an RT FIFO.
      • Size—Displays the maximum number of triggers in the queue that the statechart allows.
      • Enqueue timeout in ms—(RT FIFO only) Displays the amount of time, in milliseconds, LabVIEW waits for an open slot in the queue before either overwriting the trigger or discarding the incoming trigger.
      • Enqueue overwrite on timeout—(RT FIFO only) Indicates whether LabVIEW overwrites the oldest value in the RT FIFO if the RT FIFO does not have an available slot.
      • Read mode—(RT FIFO only) Displays the read behavior of the RT FIFO.
        • Polling—Indicates whether LabVIEW continually polls the RT FIFO for new data or an open slot.
        • Blocking—Indicates whether the thread of the statechart does not poll the RT FIFO while the statechart waits, thus allowing other tasks in the system to execute.
      • Write mode—(RT FIFO only) Displays the write behavior of the RT FIFO.
        • Polling—Indicates whether LabVIEW continually polls the RT FIFO for new data or an open slot.
        • Blocking—Indicates whether the thread of the statechart does not poll the RT FIFO while the statechart waits, thus allowing other tasks in the system to execute.
    • Internal trigger queue size—Displays the maximum number of triggers in the internal trigger queue that the statechart allows.
    • Debugging—Indicates whether debugging is Enabled or Disabled for the statechart.
    • Reset output values after each iteration—Displays TRUE if the statechart resets the values of the Outputs.ctl type definition after every iteration of the statechart. Displays FALSE if the statechart caches output values between iterations.
    • Guard or Action VI reentrancy—Displays how the statechart handles the reentrancy of the guards and actions of this statechart. This option is not valid if you specify Enabled in the Debugging pull-down menu of the Statechart Code Generation page of the Project Library Properties dialog box.
      • Preallocate clone for each instance—Indicates whether LabVIEW allocates clones of the reentrant guard or action code for every call to the reentrant code.
      • Share clones between instances—Indicates whether LabVIEW allocates clones of the reentrant guard or action code on-demand for each call to the reentrant code.
  • Statechart Diagram—Describes the properties of the pseudostates, connectors, states, transitions, and regions of the statechart. If any of the components on the statechart diagram do not have a label, LabVIEW assigns generic names to the components in the XML file. For example, if a transition does not have a label, LabVIEW assigns the name Transition to the transition.
    • Main Diagram—Displays an image of the statechart diagram and lists the pseudostates, connectors, states, and transitions that the main region contains.
      • Image—Displays an image of the entire statechart diagram.
      • Contained Objects—Lists the pseudostates, connectors, and states that the main region contains.
      • Contained Transitions—Lists the transitions that the main region contains.
    • Pseudostates and Connectors—Displays the following information about each pseudostate or connector in the statechart.
      • Image—Displays an image of the pseudostate or connector.
      • Description—Displays a description of the pseudostate or connector. This description corresponds to the Description field of the Description and Tip dialog box for the pseudostate or connector.
      • Source—Lists the statechart object from which each transition into the current pseudostate or connector begins. Source also lists the transitions into the current pseudostate or connector. The –> symbol indicates the sequence in which a statechart moves between states and pseudostates/connectors through transitions. For example, State 1 –> Transition 1 indicates that the statechart moves from State 1 to the current pseudostate or connector through Transition 1.
      • Destination—Lists the transitions from the current pseudostate or connector. Destination also lists the statechart object to which each transition leads. The –> symbol indicates the sequence in which a statechart moves between states and pseudostates/connectors through transitions. For example, Transition 1 –> State 1 indicates that the statechart moves from the current pseudostate or connector to State 1 through Transition 1.
      • Containing Region—Lists the region that contains the pseudostate or connector.
    • States—Displays the following information about each state in the statechart.
      • Image—Displays an image of the state.
      • Description—Displays a description of the state. This description corresponds to the Description field of the Description and Tip dialog box for the state.
      • Source—Lists the statechart object from which each transition into the current state begins. Source also lists the transitions into the current state. The –> symbol indicates the sequence in which a statechart moves between states and pseudostates/connectors through transitions.
      • Destination—Lists the transitions from the current state or connector. Destination also lists the statechart object to which each transition leads. The –> symbol indicates the sequence in which a statechart moves between states and pseudostates/connectors through transitions.
      • Containing Region—Lists the region that contains the state.
      • Contained Regions—Lists the region(s) that the state contains.
      • Contained Objects—Lists any Fork or Join connectors that the state contains.
      • Subdiagram—Displays an image of the state if the state appears as a subdiagram.
      • Entry Action—Displays the following information about the entry action of the state.
        • Description—Displays a description of the entry action. This description corresponds to the Description field on the Properties page of the Configure State dialog box.
        • Action—Displays information about the action code for the state.
          • Code—Displays the block diagram of the action code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the action code on this block diagram and the action does nothing. This information corresponds to the Disable? checkbox on the Action page of the Configure State dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the action code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
      • Exit Action—Displays the following information about the exit action of the state.
        • Description—Displays a description of the exit action. This description corresponds to the Description field on the Properties page of the Configure State dialog box.
        • Action—Displays information about the action code for the state.
          • Code—Displays the block diagram of the action code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the action code on this block diagram and the action does nothing. This information corresponds to the Disable? checkbox on the Action page of the Configure State dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the action code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
      • Static Rxn—Displays the following information about the static reaction of the state.
        • Description—Displays a description of the static reaction. This description corresponds to the Description field on the Properties page of the Configure State dialog box.
        • Trigger List—Lists all triggers and groups to which the static reaction responds.
        • Guard—Displays the block diagram of the guard code for the state. Also displays if the guard code is disabled, and how LabVIEW preallocates memory when running the guard code.
          • Code—Displays the block diagram of the guard code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the guard code on this block diagram and the guard always evaluates to TRUE. This information corresponds to the Disable? checkbox on the Guard page of the Configure State dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the guard code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
        • Action—Displays the block diagram of the action code for the state. Also displays if the action code is disabled, and how LabVIEW preallocates memory when running the action code.
          • Code—Displays the block diagram of the action code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the action code on this block diagram and the action does nothing. This information corresponds to the Disable? checkbox on the Action page of the Configure State dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the action code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
    • Transitions—Displays the following information about each transition in the statechart.
      • Image—Displays an image of the transition.
      • Description—Displays a description of the transition. This description corresponds to the Description field of the Description and Tip dialog box for the transition.
      • Source—Lists the statechart object from which the current transition begins.
      • Destination—Lists the statechart object to which the current transition leads.
      • Containing Region—Lists the region that contains the transition.
      • Transition Code—Displays the following information about the guard and action code of the transition.
        • Description—Displays a description of the transition code. This description corresponds to the Description field of the Properties page of the Configure Transition dialog box.
        • Trigger List—Lists all triggers and groups to which the transition reacts.
        • Guard—Displays the block diagram of the guard code for the transition. Also displays if the guard code is disabled, and how LabVIEW preallocates memory when running the guard code.
          • Code—Displays the block diagram of the guard code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the guard code on this block diagram and the guard always evaluates to TRUE. This information corresponds to the Disable? checkbox on the Guard page of the Configure Transition dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the guard code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
        • Action—Displays the block diagram of the action code for the transition. Also displays if the action code is disabled, and how LabVIEW preallocates memory when running the action code.
          • Code—Displays the block diagram of the action code.
          • Disable—Indicates, when TRUE, that LabVIEW nullifies the action code on this block diagram and the action does nothing. This information corresponds to the Disable? checkbox on the Action page of the Configure Transition dialog box.
          • AutoPreAllocate—Indicates, when TRUE, that LabVIEW optimizes array and string operations in the action code for this reaction by preallocating memory at compile time rather than dynamically allocating memory at run time. This information is only available when editing a statechart that you configure to run on an FPGA target in the Statechart Code Generation page of the Project Library Properties dialog box.
    • Regions—Displays the following information about each region in the statechart.
      • Image—Displays an image of the region.
      • Description—Displays a description of the region. This description corresponds to the Description field of the Description and Tip dialog box for the region.
      • Containing State—Lists the state that contains the region.
      • Contained Objects—Lists the pseudostates, connectors, and states that the region contains.
      • Contained Transitions—Lists the transitions that the region contains.

 

Your Feedback! poor Poor  |  Excellent excellent   Yes No
 Document Quality? 
 Answered Your Question? 
Add Comments 1 2 3 4 5 submit