Claims
- 1. A computer-implemented method for programmatically analyzing a graphical program, the method comprising:
storing the graphical program in a memory; programmatically analyzing the graphical program; and displaying one or more suggested modifications to the graphical program based on said programmatically analyzing the graphical program.
- 2. The method of claim 1,
wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program.
- 3. The method of claim 1,
wherein the graphical program comprises a graphical data flow program.
- 4. The method of claim 1,
wherein said programmatically analyzing the graphical program comprises programmatically analyzing performance of the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested modifications to improve the performance of the graphical program.
- 5. The method of claim 1,
wherein said programmatically analyzing the graphical program comprises programmatically analyzing functionality of the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested modifications to change the functionality of the graphical program.
- 6. The method of claim 1,
wherein said programmatically analyzing the graphical program comprises programmatically determining an error in the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying a suggested modification to correct the error.
- 7. The method of claim 1,
wherein said displaying the one or more suggested modifications to the graphical program comprises displaying text information indicating the one or more suggested modifications.
- 8. The method of claim 1,
wherein said displaying the one or more suggested modifications to the graphical program comprises visually altering an appearance of the graphical program to indicate the one or more suggested modifications.
- 9. The method of claim 1,
wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested portions of graphical source code to include in the graphical program.
- 10. The method of claim 1,
wherein the graphical program includes a block diagram; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the block diagram; and wherein said displaying the one or more suggested modifications to the graphical program includes displaying one or more suggested modifications to the block diagram.
- 11. The method of claim 1,
wherein the graphical program includes a graphical user interface; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the graphical user interface; and wherein said displaying the one or more suggested modifications to the graphical program includes displaying one or more suggested modifications to the graphical user interface.
- 12. The method of claim 1, further comprising:
applying the one or more suggested modifications to the graphical program.
- 13. The method of claim 12,
wherein said applying the one or more suggested modifications to the graphical program comprises programmatically modifying the graphical program to implement the one or more suggested modifications.
- 14. The method of claim 13, further comprising:
receiving user input selecting one or more of the one or more suggested modifications to apply to the graphical program; wherein said programmatically modifying the graphical program comprises programmatically modifying the graphical program to implement the one or more selected modifications.
- 15. The method of claim 13,
wherein said programmatically modifying the graphical program comprises automatically modifying the graphical program with no user input received during said modifying.
- 16. The method of claim 13,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically adding a new node to the graphical program.
- 17. The method of claim 13,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically removing a node from the graphical program.
- 18. The method of claim 13,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically replacing a first node in the graphical program with a second node.
- 19. The method of claim 13,
wherein the graphical program includes first graphical source code that has first functionality; wherein said programmatically modifying the graphical program includes programmatically modifying the first graphical source code to have second functionality, wherein said second functionality is different than said first functionality.
- 20. The method of claim 12,
wherein said applying the one or more suggested modifications comprises one or more of:
improving performance of the graphical program; correcting an error in the graphical program; and/or changing functionality of the graphical program.
- 21. The method of claim 1,
wherein the graphical program includes first graphical source code that implements first functionality; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the first graphical source code; wherein said displaying the one or more suggested modifications to the graphical program includes displaying one or more suggested modifications to the first graphical source code; wherein the method further comprises programmatically modifying the first graphical source code to implement the one or more suggested modifications to the first graphical source code.
- 22. The method of claim 1, further comprising:
programmatically generating a new graphical program based on the original graphical program; wherein the programmatically generated new graphical program includes the one or more suggested modifications to the original graphical program.
- 23. A memory medium comprising program instructions for programmatically analyzing a graphical program, wherein the program instructions are executable to implement:
programmatically analyzing the graphical program; and displaying results of said programmatically analyzing the graphical program.
- 24. The memory medium of claim 23,
wherein the memory medium stores the graphical program; wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program.
- 25. The memory medium of claim 23,
wherein the graphical program comprises a graphical data flow program.
- 26. The memory medium of claim 23,
wherein said displaying results of said programmatically analyzing the graphical program comprises displaying one or more suggested modifications to the graphical program based on said programmatically analyzing the graphical program.
- 27. The memory medium of claim 23,
wherein said displaying results of said programmatically analyzing the graphical program comprises one or more of:
displaying information regarding performance of the graphical program; displaying information regarding functionality of the graphical program; and/or displaying information regarding graphical program elements present in the graphical program.
- 28. A computer-implemented method for programmatically modifying a graphical program, the method comprising:
storing the graphical program in a memory; programmatically analyzing the graphical program; and programmatically modifying the graphical program based on said programmatically analyzing the graphical program.
- 29. The method of claim 28,
wherein said programmatically modifying the graphical program comprises one or more of:
improving performance of the graphical program; correcting an error in the graphical program; and/or changing functionality of the graphical program.
- 30. The method of claim 28,
wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program.
- 31. The method of claim 28,
wherein the graphical program comprises a graphical data flow program.
- 32. The method of claim 28,
wherein said programmatically modifying the graphical program comprises automatically modifying the graphical program with no user input received during said modifying.
- 33. The method of claim 28, further comprising:
displaying one or more suggested modifications to the graphical program based on said programmatically analyzing the graphical program; and receiving user input requesting to perform the one or more suggested modifications; wherein said programmatically modifying the graphical program comprises programmatically performing the one or more suggested modifications.
- 34. The method of claim 28, further comprising:
displaying one or more options for affecting the programmatic modification of the graphical program; receiving user input selecting one or more of the one or more displayed options; wherein said programmatically modifying the graphical program comprises programmatically modifying the graphical program in accordance with the one or more selected options.
- 35. The method of claim 28,
wherein the graphical program includes a block diagram; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the block diagram; and wherein said programmatically modifying the graphical program comprises programmatically modifying the block diagram.
- 36. The method of claim 28,
wherein the graphical program includes a graphical user interface; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the graphical user interface; and wherein said programmatically modifying the graphical program comprises programmatically modifying the graphical user interface.
- 37. The method of claim 28,
wherein the graphical program includes first graphical source code that implements first functionality; wherein said programmatically analyzing the graphical program comprises programmatically analyzing the first graphical source code; and wherein said programmatically modifying the graphical program comprises programmatically modifying the first graphical source code.
- 38. The method of claim 28,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically adding a new node to the graphical program.
- 39. The method of claim 28,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically removing a node from the graphical program.
- 40. The method of claim 28,
wherein the graphical program includes a plurality of graphical program nodes; wherein said programmatically modifying the graphical program includes programmatically replacing a first node in the graphical program with a second node.
- 41. The method of claim 28,
wherein the graphical program includes first graphical source code that has first functionality; wherein said programmatically modifying the graphical program includes programmatically modifying the first graphical source code to have second functionality, wherein said second functionality is different than said first functionality.
- 42. A computer-implemented method for automatically changing a graphical program, the method comprising:
storing the graphical program in a memory; programmatically analyzing the graphical program to find one or more instances of a first node; and programmatically replacing each instance of the first node with one or more other nodes.
- 43. The method of claim 42,
wherein said programmatically replacing each instance of the first node with the one or more other nodes results in one or more of:
improving performance of the graphical program; and/or changing functionality of the graphical program.
- 44. A computer-implemented method for automatically changing a graphical program, the method comprising:
storing the graphical program in a memory; receiving input specifying a first graphical source code template; and programmatically analyzing the graphical program to determine one or more portions of the graphical program matching the first graphical source code template.
- 45. The method of claim 44, further comprising:
visually indicating the one or more portions of the graphical program that match the first graphical source code template.
- 46. The method of claim 44, further comprising:
programmatically modifying each portion of the graphical program that matches the first graphical source code template.
- 47. The method of claim 44, further comprising:
programmatically replacing each portion of the graphical program that matches the first graphical source code template with a portion of graphical source code based on a second graphical source code template.
- 48. A memory medium comprising program instructions for programmatically analyzing a graphical program, wherein the program instructions are executable to implement:
programmatically analyzing the graphical program; and displaying one or more suggested modifications to the graphical program based on said programmatically analyzing the graphical program.
- 49. The memory medium of claim 48,
wherein the memory medium stores the graphical program.
- 50. The memory medium of claim 48,
wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program.
- 51. The memory medium of claim 48,
wherein the graphical program comprises a graphical data flow program.
- 52. The memory medium of claim 48,
wherein said programmatically analyzing the graphical program comprises programmatically analyzing performance of the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested modifications to improve the performance of the graphical program.
- 53. The memory medium of claim 48,
wherein said programmatically analyzing the graphical program comprises programmatically analyzing functionality of the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested modifications to change the functionality of the graphical program.
- 54. The memory medium of claim 48,
wherein said programmatically analyzing the graphical program comprises programmatically determining an error in the graphical program; wherein said displaying the one or more suggested modifications to the graphical program comprises displaying a suggested modification to correct the error.
- 55. The memory medium of claim 48,
wherein said displaying the one or more suggested modifications to the graphical program comprises displaying text information indicating the one or more suggested modifications.
- 56. The memory medium of claim 48,
wherein said displaying the one or more suggested modifications to the graphical program comprises visually altering an appearance of the graphical program to indicate the one or more suggested modifications.
- 57. The memory medium of claim 48,
wherein said displaying the one or more suggested modifications to the graphical program comprises displaying one or more suggested portions of graphical source code to include in the graphical program.
PRIORITY CLAIM
[0001] This application claims benefit of priority of U.S. provisional application Serial No. 60/403,351 titled “Programmatically Analyzing and Modifying a Graphical Program” filed Aug. 14, 2002, whose inventors are Joel Sumner, Daniel Hedges, Phil Joffrain and Darren Nattinger.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60403351 |
Aug 2002 |
US |