IP Library Granted Patent US 8,108,833
Granted Patent B2
US 8,108,833 · App. 11/748,822 · Granted Jan 31, 2012

Automatically generating a graphical data flow program from a statechart

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,108,833
App. No.
11/748,822
Granted
Jan 31, 2012
Kind
B2
Abstract

A system and method for automatically generating a graphical data flow program from a statechart are disclosed. The statechart may be created in a graphical manner in response to user input, e.g., in response to the user arranging state icons on a display and creating interconnections representing transitions among the respective states. The statechart may include at least one hierarchical state, where each hierarchical state includes one or more sub-states. A graphical data flow program may be automatically generated from the statechart. The graphical data flow program may include a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, where connections among the nodes visually indicate data flow among the nodes. The graphical data flow program may be executable to implement the functionality of the statechart.

Claims (48)

1. A computer-implemented method comprising:

a computer system executing program instructions to create a statechart in response to user input, wherein creating the statechart comprises displaying a plurality of state icons on a display device in response to user input and displaying a plurality of connector elements interconnecting the state icons on the display device in response to user input, wherein the state icons represent a plurality of states and wherein the connector elements represent transitions between the states, wherein the statechart includes one or more hierarchical states, wherein each of the one or more hierarchical states includes one or more sub-states, wherein the statechart specifies first functionality; and

the computer system executing program instructions to automatically generate a graphical data flow program from the statechart, wherein the graphical data flow program includes a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein connections among the nodes visually indicate data flow among the nodes, wherein the graphical data flow program implements the first functionality;

wherein the one or more hierarchical states include a first hierarchical state having one or more sub-states, wherein automatically generating the graphical data flow program comprises automatically generating a first block diagram and including a first sub-program node in the first block diagram, wherein the first sub-program node encapsulates a second block diagram corresponding to the one or more sub-states of the first hierarchical state.

2. The method of claim 1 , further comprising:

the computer system executing the graphical data flow program to perform the first functionality specified by the statechart.

3. The method of claim 1 ,

wherein said automatically generating the graphical data flow program comprises automatically generating graphical data flow code for checking for received trigger events.

4. The method of claim 1 ,

wherein said automatically generating the graphical data flow program comprises automatically generating graphical data flow code for checking for valid transitions in response to receiving a trigger event.

5. The method of claim 4 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more static reactions if no valid transition is found.

6. The method of claim 4 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more exit actions for a current state if a valid transition is found.

7. The method of claim 4 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more entry actions for a destination state if a valid transition is found.

8. The method of claim 1 ,

wherein said automatically generating the graphical data flow program comprises automatically encapsulating the graphical data flow program in a graphical program node.

9. The method of claim 8 ,

wherein the automatically generated graphical data flow program comprises a first graphical program;

wherein the method further comprises the computer system executing program instructions to include the graphical program node in a second graphical program to configure the second graphical program to invoke the statechart.

10. A non-transitory computer-readable memory medium storing program instructions executable to:

create a statechart in response to user input, wherein creating the statechart comprises displaying a plurality of state icons on a display device in response to user input and displaying a plurality of connector elements interconnecting the state icons on the display device in response to user input, wherein the state icons represent a plurality of states and wherein the connector elements represent transitions between the states, wherein the statechart includes one or more hierarchical states, wherein each of the one or more hierarchical states includes one or more sub-states, wherein the statechart specifies first functionality; and

automatically generate a graphical data flow program from the statechart, wherein the graphical data flow program includes a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein connections among the nodes visually indicate data flow among the nodes, wherein the graphical data flow program implements the first functionality;

wherein the one or more hierarchical states include a first hierarchical state having one or more sub-states, wherein automatically generating the graphical data flow program comprises automatically generating a first block diagram and including a first sub-program node in the first block diagram, wherein the first sub-program node encapsulates a second block diagram corresponding to the one or more sub-states of the first hierarchical state.

11. The computer-readable memory medium of claim 10 , wherein the program instructions are further executable to:

execute the graphical data flow program to perform the first functionality specified by the statechart.

12. The computer-readable memory medium of claim 10 ,

wherein said automatically generating the graphical data flow program comprises automatically generating graphical data flow code for checking for received trigger events.

13. The computer-readable memory medium of claim 10 ,

wherein said automatically generating the graphical data flow program comprises automatically generating graphical data flow code for checking for valid transitions in response to receiving a trigger event.

14. The computer-readable memory medium of claim 13 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more static reactions if no valid transition is found.

15. The computer-readable memory medium of claim 13 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more exit actions for a current state if a valid transition is found.

16. The computer-readable memory medium of claim 13 ,

wherein said automatically generating the graphical data flow program further comprises automatically generating graphical data flow code for performing one or more entry actions for a destination state if a valid transition is found.

17. The computer-readable memory medium of claim 10 ,

wherein said automatically generating the graphical data flow program comprises automatically encapsulating the graphical data flow program in a graphical program node.

18. A computer system comprising:

one or more processors;

memory storing program instructions;

an input device; and

a display device;

wherein the program instructions are executable by the one or more processors to:

create a statechart in response to user input, wherein creating the statechart comprises displaying a plurality of state icons on the display device in response to user input and displaying a plurality of connector elements interconnecting the state icons on the display device in response to user input, wherein the state icons represent a plurality of states and wherein the connector elements represent transitions between the states, wherein the statechart includes one or more hierarchical states, wherein each of the one or more hierarchical states includes one or more sub-states, wherein the statechart specifies first functionality; and

automatically generate a graphical data flow program from the statechart, wherein the graphical data flow program includes a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein connections among the nodes visually indicate data flow among the nodes, wherein the graphical data flow program implements the first functionality;

wherein the one or more hierarchical states include a first hierarchical state having one or more sub-states, wherein automatically generating the graphical data flow program comprises automatically generating a first block diagram and including a first sub-program node in the first block diagram, wherein the first sub-program node encapsulates a second block diagram corresponding to the one or more sub-states of the first hierarchical state.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →