Callable graphical programming language

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S152000

Reexamination Certificate

active

06816914

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to the field of graphical programming languages, and more particularly, to a library of function calls that allow a graphical programming language user function to be callable by other software applications.
2. Related Art
In textual languages such as C, PASCAL, or BASIC, one programs using keywords following rules of syntax. In graphical languages, one connects icons together using a mouse to generate a program resembling a data flow diagram. Hewlett Packard Visual Engineering Environment (HP VEE) for Windows is a graphical programming language (GPL) designed for test and measurement applications.
In a GPL, one programs by selecting objects (icons) from menus, placing those objects within a working area environment, and connecting them together using a mouse. The lines connecting the objects carry data or control signals.
In many areas customers are content to have the GPL be the central piece of software in their test systems. While GPLs may call routines written in other languages, such as PASCAL, C, or FORTRAN, the GPL is still the controlling software in the integrated system. However, in many cases customers want the reverse, a GPL that is callable from other software. Hewlett Packard (HP) currently supports the ability for HP VEE to call user functions remotely, but does not support the reverse, that is, being able to call HP VEE from other software.
SUMMARY OF THE INVENTION
The present invention is directed towards a graphical programming language (GPL) that is callable from other software languages, such as PASCAL, C, or FORTRAN. The present invention allows user functions from a GPL to be called, much like a procedure from one textual language is called by a second textual language. The present invention uses a client/server configuration to allow GPL user functions to be callable from other software applications. The client is a library of ‘C’ procedure calls. The GPL server is the service. Thus, GPL user functions can be called by any application that can link in the ‘C’ library.
The present invention allows the client to exist on a separate machine from the GPL service or on the same machine in the presence of a multitasking operating system. When the client exists on a separate machine, the client and the server can communicate via various network communication protocols, such as Inter-Process Communication (IPC) based on TCP/IP protocols. IPC based on TCP/IP protocols is well known to a person skilled in the relevant art. A Berkeley socket application programmer interface (API) is written on top of TCP/IP. A further description of a Berkeley socket API is found in the above cross-referenced patent application titled, “A To/From Socket Object”; U.S. patent application Ser. No. 08/581,123, now abandoned.
The ‘C’ library consists of two separate application programmer interfaces (APIs). The first API instantiates the GPL environment, loads in user functions, and executes the user functions. Since GPLs are interpreted languages and are not compiled, a GPL environment must be instantiated and present to load in libraries and execute user functions.
When a ‘C’ library procedure call invokes a GPL user function, the arguments of the call correspond to the input and output terminals on the user function. The data being sent to the GPL user function is the input data. The data being returned from the GPL user function is the result of the execution of the GPL user function. The data of the arguments and the results are GPL data types, known as containers. A container is a complex data type that encapsulates all information about the data. When calling a GPL user function from ‘C’ code it is necessary to encapsulate the primitive data types in ‘C’ into GPL containers. Conversely, when receiving results back from a GPL function call, it is necessary to remove the primitive type from the container so that the ‘C’ code may use the data. The second API in the ‘C’ library builds and unbuilds these containers.
The GPL user function executes in the GPL server, which is a separate process. The GPL user function can be executed in one of two modes, a normal execution mode or a debug execution mode. The normal execution mode allows the GPL user function to execute in a normal fashion, i.e., execution without being able to view the user function. The debug execution mode allows the user to view the user function in a debug window. At the beginning of execution an implicit break point is set on the user function. The user can set breakpoints within the user function and then step into the function using the step button or the continue button. The user can then proceed through the entire function until execution has stopped. At the end of execution, the debug window will disappear.
The present invention can ideally be run on different, heterogeneous machines, such as a PC running WIN95 and a SUN workstation, or it can be run on the same machine. This client/server model for linking in GPL user functions allows for a high level of concurrence and distribution as well as heterogeneity.


REFERENCES:
patent: 4901221 (1990-02-01), Kodosky et al.
patent: 5218699 (1993-06-01), Brandle et al.
patent: 5287447 (1994-02-01), Miller et al.
patent: 5325481 (1994-06-01), Hunt
patent: 5379374 (1995-01-01), Ishizaki et al.
patent: 5410648 (1995-04-01), Pazel
patent: 5497500 (1996-03-01), Rogers et al.
patent: 5546519 (1996-08-01), Berry
patent: 5583988 (1996-12-01), Crank et al.
patent: 6014147 (2000-01-01), Politis et al.
W. R. Stevens, UNIX Network Programming, Prectice Hall Software series, Chapter 18, Appendix A.3, 00/00/1990.*
J. Caven and J. Jackman, “An Icon-Based Approach to System Control Development”, IEEE Trans. Industrial Electronics, vol. 37, No. 3, 00/06/90.*
(no author given), “Introduction to the Win32 Application Programming Interface,” http://www.cs.pvamu.edu/~dhobson/intro32.htm, pp. 1-13, Jul. 1994.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Callable graphical programming language does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Callable graphical programming language, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Callable graphical programming language will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3282975

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.