Patents by Inventor Duncan Hudson
Duncan Hudson has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 8291329Abstract: System and method for merging differences between graphical programs. Information is received regarding matches and differences, e.g., in hardware, software, configuration, and/or connectivity, between first and second graphical programs, each comprising respective pluralities of interconnected nodes. The information is analyzed to merge differences between the first and second graphical programs, e.g., for each difference: removing all non-common nodes and connections thereto in the second sub-graph from the second graphical program, adding all common nodes and connections thereto in the first sub-graph to the second graphical program, determining all edges in the first sub-graph that connect common nodes to non-common nodes; and for each determined edge, adding to the second graphical program an edge that connects a corresponding common node in the second sub-graph with a corresponding non-common node added from the first sub-graph. A merged graphical program is displayed on a display, e.g.Type: GrantFiled: March 26, 2010Date of Patent: October 16, 2012Assignee: National Instruments CorporationInventors: Ray Hsu, Mohammed Kamran Shah, Duncan Hudson, Yixin Guo, Jonathan P. Fournie
-
Publication number: 20100223564Abstract: System and method for merging differences between graphical programs. Information is received regarding matches and differences, e.g., in hardware, software, configuration, and/or connectivity, between first and second graphical programs, each comprising respective pluralities of interconnected nodes. The information is analyzed to merge differences between the first and second graphical programs, e.g., for each difference: removing all non-common nodes and connections thereto in the second sub-graph from the second graphical program, adding all common nodes and connections thereto in the first sub-graph to the second graphical program, determining all edges in the first sub-graph that connect common nodes to non-common nodes; and for each determined edge, adding to the second graphical program an edge that connects a corresponding common node in the second sub-graph with a corresponding non-common node added from the first sub-graph. A merged graphical program is displayed on a display, e.g.Type: ApplicationFiled: March 26, 2010Publication date: September 2, 2010Inventors: Ray Hsu, Mohammed Kamran Shah, Duncan Hudson, Yixin Guo, Jonathan P. Fournie
-
Patent number: 7703027Abstract: System and method for merging differences between graphical programs. Information is received regarding matches and differences, e.g., in hardware, software, configuration, and/or connectivity, between first and second graphical programs, each comprising respective pluralities of interconnected nodes. The information is analyzed to merge differences between the first and second graphical programs, e.g., for each difference: removing all non-common nodes and connections thereto in the second sub-graph from the second graphical program, adding all common nodes and connections thereto in the first sub-graph to the second graphical program, determining all edges in the first sub-graph that connect common nodes to non-common nodes; and for each determined edge, adding to the second graphical program an edge that connects a corresponding common node in the second sub-graph with a corresponding non-common node added from the first sub-graph. A merged graphical program is displayed on a display, e.g.Type: GrantFiled: January 12, 2006Date of Patent: April 20, 2010Assignee: National Instruments CorporationInventors: Ray Hsu, Mohammed Kamran Shah, Duncan Hudson, Yixin Guo, Jonathan P. Fournie
-
Publication number: 20070283322Abstract: System and method for merging graphical programs. Information is received regarding first, second, and third graphical programs, where the third graphical program is an ancestor graphical program of the first and second. The information is analyzed to determine differences among the graphical programs. The first and second graphical programs are merged based on the determined differences, generating a merged graphical program, which is displayed.Type: ApplicationFiled: July 27, 2007Publication date: December 6, 2007Inventors: Ray Hsu, Mohammed Shah, Duncan Hudson, Yixin Guo, Jonathan Fournie
-
Publication number: 20060190105Abstract: System and method for merging differences between graphical programs. Information is received regarding matches and differences, e.g., in hardware, software, configuration, and/or connectivity, between first and second graphical programs, each comprising respective pluralities of interconnected nodes. The information is analyzed to merge differences between the first and second graphical programs, e.g., for each difference: removing all non-common nodes and connections thereto in the second sub-graph from the second graphical program, adding all common nodes and connections thereto in the first sub-graph to the second graphical program, determining all edges in the first sub-graph that connect common nodes to non-common nodes; and for each determined edge, adding to the second graphical program an edge that connects a corresponding common node in the second sub-graph with a corresponding non-common node added from the first sub-graph. A merged graphical program is displayed on a display, e.g.Type: ApplicationFiled: January 12, 2006Publication date: August 24, 2006Inventors: Ray Hsu, Mohammed Shah, Duncan Hudson, Yixin Guo, Jonathan Fournie
-
Patent number: 7024631Abstract: System and method for enabling graphical program polymorphism. A “polymorphic node” to be included in a graphical program may be created and configured. A parameter interface that defines allowable inputs and outputs for the polymorphic node may be specified, and a set of functions or subprograms may be associated with the polymorphic node. The functions may have parameter interfaces that specify particular data types for the inputs/outputs of the functions. Once a polymorphic node is included in a graphical program, the node may be configured with typed inputs and outputs. The graphical programming system may determine a particular function associated with the polymorphic node to match the polymorphic node to, based on the data types of the configured inputs and outputs. This determination may also be based on an ordering specified for the set of functions associated with the polymorphic node. A best-fit heuristic for automatically making this determination is described.Type: GrantFiled: May 12, 2000Date of Patent: April 4, 2006Assignee: National Instruments CorporationInventors: Duncan Hudson, Erica Bono
-
Patent number: 5990906Abstract: An Undo/Redo feature for a graphical programming system which minimizes the required data storage. The graphical programming system includes a plurality of interconnected objects, including fixed size objects and variable size objects. A variable size object is an object which typically changes in size, i.e., grows or shrinks, in response to user modification, whereas fixed size objects do not change in size. When an object is modified by the user, the method of the present invention stores a backup copy for undo purposes. For modification of an object, the backup is performed differently depending on whether the object is a variable size object or a fixed size object. For a variable size object, the method stores the original object as the previous object in the backup list, and the method stores a copy of the original object as the current object in the backup list.Type: GrantFiled: August 19, 1997Date of Patent: November 23, 1999Assignee: National Instruments CorporationInventors: Duncan Hudson, Melanie Jensen, Jeffrey L. Kodosky