Multi-instance input device control
First Claim
1. A input device control program which allows multiple client application programs to simultaneously communicate with an input device, wherein said input device control program in response to a first application program calling for a first connection to be established to said input device:
- i) passes said first application program'"'"'s calls to a process'"'"' application program interface (API);
ii) causes said process'"'"' network protocol to load said executable input device control program onto a process server;
iii) causes said process server to create a single input device instance and connects said single input device instance to said input device;
iv) causes said process server to create a first input device control instance and connects said first input device control instance to said single input device instance;
v) causes said process server to create an interface through which said client application program communicates with said single input device instance, and vi) causes a second input device control instance to be created in response to a call from a second application program calling for a second connection to a said single input device and connecting said second input device control instance to said single input device instance allowing said second application program to communicate with said same single input device instance.
3 Assignments
0 Petitions
Accused Products
Abstract
The present invention combines features of an executable process with the need for multiple application programs to share a single input device. The present invention provides an executable program implemented as a process that allows multiple applications to communicate with a single input device. This is achieved by loading the input device control executable program as a process. The executable program is a server thus allowing multiple application programs to interface with the same input device. The multi-instance input device control (MIIDC) executable program responds to each application program request as if the input device is open for the calling application program. Each application program is thus enabled to communicate with the input device instance without interrupting the operation of other application programs communicating with the input device. The input device instance keeps track of all the connections to it and multiplexes and resolves conflicting requests.
15 Citations
13 Claims
-
1. A input device control program which allows multiple client application programs to simultaneously communicate with an input device, wherein said input device control program in response to a first application program calling for a first connection to be established to said input device:
-
i) passes said first application program'"'"'s calls to a process'"'"' application program interface (API);
ii) causes said process'"'"' network protocol to load said executable input device control program onto a process server;
iii) causes said process server to create a single input device instance and connects said single input device instance to said input device;
iv) causes said process server to create a first input device control instance and connects said first input device control instance to said single input device instance;
v) causes said process server to create an interface through which said client application program communicates with said single input device instance, and vi) causes a second input device control instance to be created in response to a call from a second application program calling for a second connection to a said single input device and connecting said second input device control instance to said single input device instance allowing said second application program to communicate with said same single input device instance. - View Dependent Claims (2, 3, 4, 5)
loading said input device control program;
calling to said input device control program with relevant input/output data;
buffering input and output to/from said input device control program;
executing said input device control program; and
unloading said input device control program.
-
-
3. The input device program of claim 1, wherein said input device control program creates a virtual interface process and comprises routines for:
-
a) video control comprising;
i) initializing a video control;
ii) taking digital still images;
iii) recording digital video images;
iv) obtaining video driver information;
v) setting video camera properties; and
vi) obtaining video camera properties;
b) video camera event notification comprising;
i) motion detection notification;
ii) audiovisual AVI error notification;
iii) camera detached notification; and
iv) camera reattached notification.
-
-
4. The input device control program of claim 1 wherein said process is a distributed component object model (DCOM) executable program.
-
5. The input device control program of claim 1 wherein said input device comprises an electronic camera.
-
6. A distributed component object model (DCOM) executable input device control program which allows multiple client application programs to simultaneously communicate with an input device, wherein said program in response to a first application program calling for a first connection to be established to said input device:
-
i) passes said first application program'"'"'s calls to a DCOM application program interface (API);
ii) causes said DCOM'"'"'s network protocol to load said executable input device control program onto a DCOM server and;
iii) causes said DCOM server to create a single input device instance and connects said single input device instance to said input device;
iv) causes said DCOM server to create a first input device control instance and connects said first input device control instance to said single input device instance;
v) causes said DCOM server to create an interface through which said client application program communicates with said single input device instance, and vi) creates a second input device control instance to be created in response to a call from a second application program calling for a second connection to a said single input device and connecting said input device instance to said single input device instance allowing said second application program to communicate with said same single input device instance. - View Dependent Claims (7)
-
-
8. A method for allowing multiple client application programs to communicate with a single input device, said method comprising:
-
i) passing a first application program'"'"'s calls to a process'"'"' application program interface (API);
ii) causing said process'"'"' network protocol to load an executable input device control program onto a process server and;
iii) causing said process server to create a single input device instance and connecting said single input device instance to said single input device;
iv) causing said process server to create a first input device control instance and connecting said first input device control instance to said single input device instance;
v) causing said process server to create an interface through which said client application program communicates with said single input device instance, and vi) creating a second input device control instance in response to a call from a second application program calling for a second connection to said single input device and connecting said second input device control instance to said single input device instance to create an interface through which said second client application communicates with said same single input device instance. - View Dependent Claims (9, 10, 11)
-
-
12. A computer program product, comprising:
-
a computer useable medium having computer readable code embodied therein for causing multiple client application programs to communicate with a single input device, the computer code comprising instructions for;
passing a first application program'"'"'s calls to a process'"'"' application program interface (API);
causing said process'"'"' network protocol to load an executable input device control program onto a process server and;
causing said process server to create a single input device instance and connecting said single input device instance to said single input device;
causing said process server to create a first input device control instance and connecting said first input device control instance to said single input device instance;
causing said process server to create an interface through which said client application program communicates with said single input device instance, and creating a second input device control instance in response to a call from a second application program calling for a second connection to said single input device and connecting said second input device control instance to said single input device instance to create an interface through which said second client application communicates with said same single input device instance. - View Dependent Claims (13)
-
Specification