Capability-based control device driver of a computer peripheral device
First Claim
1. A data processing system, comprising:
- a computer peripheral device comprising device capability producer logic and job ticket consumer logic;
a device capability aware application comprising device capability consumer logic and job ticket producer logic;
wherein the device capability producer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform;
at a time that the device capability aware application is requested to print or scan a document;
receiving a request from the device capability aware application to obtain capabilities of the computer peripheral device;
recognizing, at a time of receiving the request, one or more available functions of the computer peripheral device;
in response to receiving the request, generating a first capability description describing one or more capabilities of the computer peripheral device based on the one or more available functions at the time of receiving the request;
sending the first capability description of the capabilities from the computer peripheral device to the device capability aware application;
wherein the device capability consumer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform;
receiving the first capability description from the computer peripheral device;
creating one or more graphical user interface (GUI) elements based upon the first capability description and causing displaying the GUI elements;
receiving user input representing one or more selections of the GUI elements;
wherein the job ticket producer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform;
creating job ticket data that describes a job for the computer peripheral device to perform, based on the GUI elements that were selected as represented in the user input;
sending the job ticket data to the peripheral device;
wherein the job ticket consumer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform;
transforming the job ticket data into one or more device-specific operational commands for the computer peripheral device;
causing the computer peripheral device to execute the operational commands;
wherein the first capability description comprises a list of features of the computer peripheral device and one or more feature constraints, wherein the one or more feature constraints comprise limitations on the availability of the capabilities or settings for capabilities that are required by an availability of another capability or by another setting of another capability.
1 Assignment
0 Petitions
Accused Products
Abstract
In an embodiment, a computer-implemented method comprises sending, to a computer peripheral device, a request to obtain capabilities of the computer peripheral device; receiving a first capability description from the computer peripheral device, wherein the first capability description describes one or more capabilities, features or functions of the device at the time of the request; creating one or more graphical user interface (GUI) elements based upon the first capability description and causing displaying the GUI elements; receiving user input representing one or more selections of the GUI elements; creating job ticket data that describes a job for the computer peripheral device to perform, based on the GUI elements that were selected as represented in the user input; sending the job ticket data to the peripheral device; wherein the job ticket data describes one or more device settings that the computer peripheral device can transform to device commands.
95 Citations
13 Claims
-
1. A data processing system, comprising:
-
a computer peripheral device comprising device capability producer logic and job ticket consumer logic; a device capability aware application comprising device capability consumer logic and job ticket producer logic; wherein the device capability producer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform; at a time that the device capability aware application is requested to print or scan a document; receiving a request from the device capability aware application to obtain capabilities of the computer peripheral device; recognizing, at a time of receiving the request, one or more available functions of the computer peripheral device; in response to receiving the request, generating a first capability description describing one or more capabilities of the computer peripheral device based on the one or more available functions at the time of receiving the request; sending the first capability description of the capabilities from the computer peripheral device to the device capability aware application; wherein the device capability consumer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform; receiving the first capability description from the computer peripheral device; creating one or more graphical user interface (GUI) elements based upon the first capability description and causing displaying the GUI elements; receiving user input representing one or more selections of the GUI elements; wherein the job ticket producer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform; creating job ticket data that describes a job for the computer peripheral device to perform, based on the GUI elements that were selected as represented in the user input; sending the job ticket data to the peripheral device; wherein the job ticket consumer logic is encoded in one or more computer-readable storage media for execution and when executed is operable to perform; transforming the job ticket data into one or more device-specific operational commands for the computer peripheral device; causing the computer peripheral device to execute the operational commands; wherein the first capability description comprises a list of features of the computer peripheral device and one or more feature constraints, wherein the one or more feature constraints comprise limitations on the availability of the capabilities or settings for capabilities that are required by an availability of another capability or by another setting of another capability. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable data storage medium encoded with one or more sequences of instructions which when executed by one or more processors cause the one or more processors to perform:
-
at a time that a device capability aware application is requested to print or scan a document; sending, to a computer peripheral device, a request to obtain capabilities of the computer peripheral device; receiving a first capability description from the computer peripheral device, wherein the first capability description describes one or more available capabilities, features or functions of the device recognized at a time of receiving the request, and generated by the device at the time of the request; creating one or more graphical user interface (GUI) elements based upon the first capability description and causing displaying the GUI elements; receiving user input representing one or more selections of the GUI elements; creating job ticket data that describes a job for the computer peripheral device to perform, based on the GUI elements that were selected as represented in the user input; sending the job ticket data to the peripheral device; wherein the job ticket data describes one or more device settings that the computer peripheral device can transform to device commands; wherein the first capability description comprises a list of features of the computer peripheral device and one or more feature constraints, wherein the one or more feature constraints comprise limitations on the availability of the capabilities or settings for capabilities that are required by an availability of another capability or by another setting of another capability. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computer-implemented method, comprising:
-
at a time that a device capability aware application is requested to print or scan a document; sending, to a computer peripheral device, a request to obtain capabilities of the computer peripheral device; receiving a first capability description from the computer peripheral device, wherein the first capability description describes one or more available capabilities, features or functions of the device recognized at a time of the request, and generated by the device at the time of the request; creating one or more graphical user interface (GUI) elements based upon the first capability description and causing displaying the GUI elements; receiving user input representing one or more selections of the GUI elements; creating job ticket data that describes a job for the computer peripheral device to perform, based on the GUI elements that were selected as represented in the user input; sending the job ticket data to the peripheral device; wherein the job ticket data describes one or more device settings that the computer peripheral device can transform to device commands; wherein the first capability description comprises a list of features of the computer peripheral device and one or more feature constraints, wherein the one or more feature constraints comprise limitations on the availability of the capabilities or settings for capabilities that are required by an availability of another capability or by another setting of another capability.
-
Specification