Run-time dynamically adaptive computer process for facilitating communication between computer programs
First Claim
1. An interface for facilitating communications among a plurality of computer programs connected by a communications program, the interface comprising:
- a template file for each of the plurality of computer programs, each template file defining data for its respective computer program and allocating memory for the data, anda plurality of equality files, each equality file equating data of one of the plurality of computer programs with data of another of the plurality of computer programs,means for transmitting equated data from one of the plurality of computer programs to another of the plurality of computer programs.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a dynamic interface between two dissimilar software programs that must communicate with each, whether running on one or a plurality of computers. The invention can provide bi-directional, non-intrusive data manipulation and communications between software programs on a distributed computing platform or across platforms on a distributed network. The invention includes user-defined template files, a user-defined equality file, first and second blocks of shared memory, a master interface, and a slave interface. The template files define the output and input data of their respective programs and map the output and input data to blocks of memory. The equality file equates the input data and output data of one program with the output data and input data, respectively, of the other computer program. The master interface takes data from the master side block of memory, reconfigures the data based on the contents of the equality file to match the input data requirements of the second computer program, and sends the reconfigured data to the slave interface to be loaded into the slave side block of shared memory. The second computer program accesses the reconfigured data from the slave side of shared memory.
134 Citations
33 Claims
-
1. An interface for facilitating communications among a plurality of computer programs connected by a communications program, the interface comprising:
-
a template file for each of the plurality of computer programs, each template file defining data for its respective computer program and allocating memory for the data, and a plurality of equality files, each equality file equating data of one of the plurality of computer programs with data of another of the plurality of computer programs, means for transmitting equated data from one of the plurality of computer programs to another of the plurality of computer programs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An interface for facilitating communications between a plurality of computer programs connected by a communication program communicating with each of the plurality of computer programs, the interface comprising:
-
means for equating the data structure and format of output data of a first of the plurality of computer programs with the data structure and format of input data of a second of the plurality of computer programs, and means for accessing the output data of the first of the plurality of computer programs, converting the output data to the data structure and format of the second of the plurality of computer programs based on the content of the equating means, and providing the converted data as input data to the second of the plurality of computer programs. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. An interface for adapting the output of a first computer program to the input requirements of a second computer program, the interface comprising:
-
first template means for defining output data of the first computer program, second template means for defining input data of the second computer program, means for equating the definition of the data of the first computer program to the definition of the data of the second computer program, and means for transmitting equated data between the first and second computer programs. - View Dependent Claims (19, 20, 21, 22)
-
-
23. A run-time, reconfigurable interface for adapting the output data of a first computer program to the input requirements of a second computer program, the interface comprising:
-
a first template file adapted to define output data of a first computer program and allocate the output data to a first memory block in the data structure and format of the first computer program; a second template file adapted to define input data of a second computer program and allocate the input data to a second memory block in the data structure and format of the second computer program; an equality file adapted to equate the output data and the input data, and a lexical analyzer using the template files and the equality file to configure a master interface and a slave interface to transmit data from the first memory block to the second block and converting the data from the data structure and format of the first computer program to the data structure and format of the second computer program during transmission to the second memory block.
-
-
24. A method of facilitating communications among computer programs, the method comprising the steps of:
-
defining output data for a first computer program, defining input data for a second computer program, equating the output data of the first computer program with the input data of the second computer program, providing a master interface in communication with the first computer program and a slave interface in communication with the second computer program for transmitting data from the first computer program to the second computer program, and providing means for converting the output data from a form usable by the first computer program to a form usable by the second computer program and during transmission from the first computer program to the second computer program. - View Dependent Claims (25, 26, 27, 28, 29)
-
-
30. An interface for facilitating communications among a plurality of computer programs, the interface comprising:
-
a master interface in communication with a first of the plurality of computer programs, and a plurality of slave interfaces, wherein each of the plurality of slave interfaces is in communication with one of the remaining of the plurality of computer programs, and wherein the master interface takes data from the first of the plurality of computer programs, converts the data from the data structure and format of said first computer program to the data structure and format of each of the remaining of the plurality of computer programs, and transmits the converted data to the slave interfaces to be passed on to the remaining of the plurality of computer programs. - View Dependent Claims (31, 32, 33)
-
Specification