INFORMATION PROCESSING APPARATUS, CONTROL METHOD, AND STORAGE MEDIUM
20220317958 · 2022-10-06
Inventors
Cpc classification
G06F3/1205
PHYSICS
B41J29/38
PERFORMING OPERATIONS; TRANSPORTING
G06F3/1204
PHYSICS
G06F3/1256
PHYSICS
G06F3/1285
PHYSICS
International classification
Abstract
An information processing apparatus includes a saving process unit configured to save, in a storage area, a first print job generated with a first printing apparatus specified and a second print job generated with a second printing apparatus different from the first printing apparatus specified, and a display control unit configured to display, in a case where a third print job including identification information corresponding to the first printing apparatus is received in a state where the first and second print jobs are saved in the storage area, a screen that includes a job name of the received third print job and a job name of the first print job and does not include a job name of the second print job.
Claims
1. An information processing apparatus comprising: a saving process unit configured to save, in a storage area, a first print job generated with a first printing apparatus specified and a second print job generated with a second printing apparatus different from the first printing apparatus specified; and a display control unit configured to display, in a case where a third print job including identification information corresponding to the first printing apparatus is received in a state where the first and second print jobs are saved in the storage area, a screen that includes a job name of the received third print job and a job name of the first print job and does not include a job name of the second print job.
2. The information processing apparatus according to claim 1, further comprising a generation unit configured to generate, in a case where a print setting screen is displayed with the first printing apparatus specified, print setting information based on a setting content generated using the print setting screen and first identification information regarding the first printing apparatus, and generate, in a case where the print setting screen is displayed with the second printing apparatus specified, print setting information based on the setting content generated using the print setting screen and second identification information regarding the second printing apparatus.
3. The information processing apparatus according to claim 2, further comprising an acquisition control unit configured to perform control, in a case where the display control unit receives the third print job including the identification information corresponding to the first printing apparatus in a state where the first and second print jobs are saved in the storage area, to acquire the first print job including the same identification information as the identification information acquired from the third print job and not to acquire the second print job including identification information different from the identification information acquired from the third print job.
4. The information processing apparatus according to claim 1, wherein the third print job is a print job generated with the first printing apparatus specified.
5. The information processing apparatus according to claim 1, wherein the third print job is a print job generated with a third printing apparatus different from the first and second printing apparatuses specified.
6. An information processing apparatus comprising: a display control unit configured to display, in a case where a first print job is generated with a connection function for connecting a plurality of print jobs and a preview function for displaying a preview image of a print job enabled, a preview screen in a state where a display maintenance function is enabled; and an addition unit configured to add, in a case where a second print job is generated with the same printing apparatus as the first print job specified and the connection function for connecting a plurality of print jobs and the preview function for displaying a preview image of a print job enabled, the second print job to the preview screen that is being displayed in the state where the display maintenance function is enabled.
7. A control method for controlling an information processing apparatus, the control method comprising: saving, in a storage area, a first print job generated with a first printing apparatus specified and a second print job generated with a second printing apparatus different from the first printing apparatus specified; and displaying, in a case where a third print job including identification information corresponding to the first printing apparatus is received in a state where the first and second print jobs are saved in the storage area, a screen that includes a job name of the received third print job and a job name of the first print job and does not include a job name of the second print job.
8. The control method according to claim 7, further comprising generating, in a case where a print setting screen is displayed with the first printing apparatus specified, print setting information based on a setting content generated using the print setting screen and first identification information regarding the first printing apparatus, and generating, in a case where the print setting screen is displayed with the second printing apparatus specified, print setting information based on the setting content generated using the print setting screen and second identification information regarding the second printing apparatus.
9. The control method according to claim 8, further comprising performing control, in a case where the third print job including the identification information corresponding to the first printing apparatus is received in the state where the first and second print jobs are saved in the storage area, to acquire the first print job including the same identification information as the identification information acquired from the third print job, and to not acquire the second print job including identification information different from the identification information acquired from the third print job.
10. The control method according to claim 7, wherein the third print job is a print job generated with the first printing apparatus specified.
11. The control method according to claim 7, wherein the third print job is a print job generated with a third printing apparatus different from the first and second printing apparatuses specified.
12. A control method for controlling an information processing apparatus, the control method comprising: displaying, in a case where a first print job is generated with a connection function for connecting a plurality of print jobs and a preview function for displaying a preview image of a print job enabled, a preview screen in a state where a display maintenance function is enabled; and adding, in a case where a second print job is generated with the same printing apparatus as the first print job specified and the connection function for connecting a plurality of print jobs and the preview function for displaying a preview image of a print job enabled, the second print job to the preview screen that is being displayed in the state where the display maintenance function is enabled.
13. A non-transitory computer-readable storage medium storing a program for causing a computer to execute: saving, in a storage area, a first print job generated with a first printing apparatus specified and a second print job generated with a second printing apparatus different from the first printing apparatus specified; and displaying, in a case where a third print job including identification information corresponding to the first printing apparatus is received in a state where the first and second print jobs are saved in the storage area, a screen that includes a job name of the received third print job and a job name of the first print job and does not include a job name of the second print job.
14. The non-transitory computer-readable storage medium storing the program according to claim 13, further causing the computer to execute, generating, in a case where a print setting screen is displayed with the first printing apparatus specified, print setting information based on a setting content generated using the print setting screen and first identification information regarding the first printing apparatus, and generating, in a case where the print setting screen is displayed with the second printing apparatus specified, print setting information based on the setting content generated using the print setting screen and second identification information regarding the second printing apparatus.
15. The non-transitory computer-readable storage medium storing the program according to claim 14, further causing the computer to execute performing control, in a case where the third print job including the identification information corresponding to the first printing apparatus is received in the state where the first and second print jobs are saved in the storage area, acquiring the first print job including the same identification information as the identification information acquired from the third print job and not acquiring the second print job including identification information different from the identification information acquired from the third print job.
16. The non-transitory computer-readable storage medium storing the program according to claim 13, wherein the third print job is a print job generated with the first printing apparatus specified.
17. The non-transitory computer-readable storage medium storing the program according to claim 13, wherein the third print job is a print job generated with a third printing apparatus different from the first and second printing apparatuses specified.
18. A non-transitory computer-readable storage medium storing a program for causing a computer to execute: displaying, in a case where a first print job is generated with a connection function for connecting a plurality of print jobs and a preview function for displaying a preview image of a print job enabled, a preview screen in a state where a display maintenance function is enabled; and adding, in a case where a second print job is generated with the same printing apparatus as the first print job specified and the connection function for connecting a plurality of print jobs and the preview function for displaying a preview image of a print job enabled, the second print job to the preview screen that is being displayed in the state where the display maintenance function is enabled.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
DESCRIPTION OF THE EMBODIMENTS
[0027]
[0028] The ROM 112 stores an initialization program. The external storage device 114 stores a group of application programs, an operating system (OS), a print data generation application, and various other types of data. The RAM 113 is used as a work memory for executing various programs stored in the external storage device 114. Windows (registered trademark) can provide an extension application for extending a printer driver function. This application is termed a “Windows Store Device App (WSDA)”. A vendor who provides a printing apparatus provides the WSDA, and thus customization of a print setting screen for printing via a particular application can become available. Similarly, there is a print workflow application (app) as an extension application for extending a printer driver function. A vendor who provides a printing apparatus can provide the print workflow app as an extension function of the WSDA. The print workflow app uses a print instruction to a printer driver as a trigger for starting operation and can provide a function involving a graphical user interface (GUI) and a function involving editing of print data.
[0029] In the present exemplary embodiment, the functions of the host computer 101 described below and processing regarding flowcharts described below are executed by the CPU 111 performing processing according to the procedure of a program stored in the ROM 112. A printing apparatus 102, which is a device, is connected to the host computer 101 via the input/output interface 116. In the present exemplary embodiment, the host computer 101 and the printing apparatus 102 are separately configured. Alternatively, the host computer 101 and the printing apparatus 102 may be configured as a single information processing apparatus. While the printing apparatus 102 is described using, as an example, an inkjet printer that performs printing by discharging ink onto a paper surface, printing may be executed using another method (e.g., an electrophotographic method). The host computer 101 may be a desktop personal computer, a smartphone, or a laptop personal computer.
[0030]
[0031] The print data generation software 202 is common software that is used in association with a plurality of printing apparatuses. That is, a printing apparatus A can perform printing using print data generated by the print data generation software 202, and also a printing apparatus B can perform printing using print data generated by the print data generation software 202. In a case where the print data generation software 202 is associated with the printing apparatus 102, the print data generation software 202 generates a print queue corresponding to the printing apparatus 102. After the print queue is generated, for example, the user can select a desired print queue from a print queue selection item 1501 on a screen provided by the application 201 as illustrated in
[0032]
[0033] The user issues an instruction to perform printing via the application 201. Specifically, the user presses a print button 1502 on the screen illustrated in
[0034] Based on application data output based on a print instruction issued by pressing performed on the print button 1502 illustrated in
[0035] The preview unit 205 acquires the intermediate data generated by the OS and displays a print preview. After checking the print preview that a desired printing result will be obtained, the user issues an instruction to start printing using a user interface (UI) of the print preview. In a case where the preview unit 205 receives the printing start instruction from the user, the preview unit 205 outputs the intermediate data to the print data generation software 202. Based on the intermediate data, the print data generation software 202 generates print data that can be interpreted by the printing apparatus 102, and outputs the print data. The print data output from the print data generation software 202 is sent to the printing apparatus 102. Based on the print data sent from the host computer 101, the printing apparatus 102 performs printing on a paper surface. With the above configuration, the user can use a print preview function that the print data generation software 202 does not have, via the extension application 203.
[0036] The description is given on a case where the preview unit 205 operates before the processing of the print data generation software 202. Alternatively, it is also possible that the preview unit 205 operates after the processing of the print data generation software 202. In this case, the preview unit 205 processes print data generated by the print data generation software 202. In a case where the user wishes to process intermediate data in the configuration in which the preview unit 205 operates after the processing of the print data generation software 202, the user may skip the processing of the print data generation software 202. In this case, the extension application 203 operates before the processing of the print data generation software 202 and issues an instruction to skip the processing of the print data generation software 202. Alternatively, the preview unit 205 can operate both before and after the processing of the print data generation software 202.
[0037] A method for skipping the processing of the print data generation software 202 is described in detail. The extension application 203 detects that an instruction to perform printing is issued based on the pressing performed on the print button 1502 illustrated in
[0038]
[0039]
[0040]
[0041] As described above, the print data generation software 202 is associated with a plurality of printing apparatuses 102, and a print queue is generated with respect to each of the printing apparatuses 102 with which the print data generation software 202 is associated. Meanwhile, the extension application 203 can also be associated with a plurality of printing apparatuses 102. That is, the extension application 203 is also used in association with a plurality of print queues. The extension application 203 can access a print job generated with a particular print queue specified and saved in the data storage area 206 even in a case where the extension application 203 is started in response to another print queue. That is, although a plurality of print jobs generated with different print queues specified is less likely to become connection targets, the plurality of print jobs generated with the different print queues specified may be displayed as connection targets in
[0042] For example, by operating the application 201, the user specifies a printer A using the print queue selection item 1501 illustrated in
[0043] Thus, to address the above-described issue in display process, it is necessary to make available only a plurality of print jobs generated with the same print queue specified, on the print preview screen illustrated in
[0044] A description will be given using an example case where the first intermediate data generated with the printer A specified by operating the print queue selection item 1501 illustrated in
[0045] To achieve the above display process, the extension application 203 saves a print job in association with information identifying a print queue in the data storage area 206. As the information identifying the print queue, the name of the print queue can be used. The name of the print queue, however, can be changed by the user. If the name of the print queue is changed, saved data may become unavailable for use, or reading out a print job saved in association with a different print queue may occur. In response, the extension application 203 adds print queue identification information for uniquely identifying a print queue associated with a print job to the above-described capability information data. Then, the extension application 203 saves the print queue identification information and the print job in association with each other in the data storage area 206. As a result, the extension application 203 can read a print job corresponding to a target print queue.
[0046] The print queue identification information is added to the capability information data by the extension application 203 at a timing of when the print data generation software 202 is associated with the printing apparatus 102 and a print queue is generated. The configuration of the present exemplary embodiment, however, is not limited to this. The timing may be any timing of when the extension application 203 can operate, such as a timing of when the extension application 203 is started for the first time using printing as a trigger, or a timing of when the user starts the extension application 203 alone. In the description of the present exemplary embodiment, the capability information data to which the print queue identification information is added by the extension application 203 is GPD or PDC data. The data format, however, is not limited to these.
[0047]
[0048]
[0049] By the above processing, intermediate data is generated based on print setting information to which print queue identification information has been added. Thus, in step S702 described below, the extension application 203 can acquire the print queue identification information by acquiring the setting value of “QueueID” from the print setting information. The print queue identification information does not necessarily need to be unique to a print queue. To handle a saved job in common between a plurality of print queues, a method of adding common identification information to the plurality of print queues can also be used. In determination of whether to assign the common identification information, a method for referencing capability information data to set print queues associated with printing apparatuses having common capabilities as targets can be used. For example, there can be a case where a print queue corresponding to a new printing apparatus having the same function as that of a reference printing apparatus for which a print queue has been generated in the past is associated with the extension application 203. In this case, the extension application 203 adds the same print queue identification information as print queue identification information assigned to the reference printing apparatus to capability information data on the new printing apparatus. This method is merely an example, and a different method may be used.
[0050]
[0051] The extension application 203 saves print queue identification information for identifying a print queue for which a print instruction is issued, a document name, and intermediate data including a print content in association with each other. In the present exemplary embodiment, data in which the print queue identification information, the document name, and the intermediate data including the print content are associated with each other is also referred to as a “print job”.
[0052] The document name and the intermediate data are acquired by processing of the preview unit 205 of the extension application 203. The print queue identification information is acquired from print setting information (PrintTicket) by the processing of the preview unit 205 of the extension application 203. Methods for saving the above-described pieces of information in association with each other include a method for generating a single piece of binary data including all the above pieces of information in a predetermined format, a method for associating the above pieces of information with each other by assigning a file name following a naming rule, a method for managing association information in a different file, and the like. The configuration of the present exemplary embodiment, however, is not limited to these. Pieces of information to be saved are not limited to these, either. Alternatively, information regarding an application that has performed printing may be saved together with the above pieces of information.
[0053]
[0054]
[0055] First, in step S601, the extension application 203 references print setting information set by the user and determines whether the print job saving function is on (enabled). As described above, the processing in
[0056] In a case where it is determined that the print job saving function is on (YES in step S601), the processing proceed to step S602. In step S602, the extension application 203 performs a job saving process.
[0057]
[0058] Next, in step S703, the extension application 203 saves the intermediate data, the job information, and the print queue identification information that are acquired in steps S701 and S702 in association with each other, in the data storage area 206 of the extension application 203. By the process of step S703, the print job is saved in the state as illustrated in
[0059] Next, in step S704, the extension application 203 notifies the user that the print job is saved. Then, in step S705, the extension application 203 instructs a print system of the OS to cancel the print job and ends the processing on the print job.
[0060] In step S601, in a case where it is determined that the print job saving function is not on (NO in step S601), then in step S603, the extension application 203 determines whether the print preview function is on. In a case where the print preview function is on (YES in step S603), the processing proceed to step S604. In step S604, the extension application 203 performs a preview process.
[0061]
[0062] Next, in step S902, the extension application 203 acquires queue identification information from the print setting information included in the intermediate data. In a case where the information illustrated in
[0063] Next, in step S904, based on the data acquired in steps S901 to S903, the extension application 203 displays the print preview screen. As illustrated in
[0064] In a case where it is determined that instructions to change print settings are received from the user (YES in step S905), the processing proceeds to step S906. In step S906, the extension application 203 changes the print setting information based on the instructions to change print settings from the user. Next, in step S907, the extension application 203 updates the preview screen based on the changed print setting information. On the preview screen illustrated in
[0065] According to the change in the job connection setting to on (display item 406 in
[0066] In a case where it is determined that a cancellation instruction is received from the user (YES in step S908), the processing proceeds to step S909. In step S909, the extension application 203 instructs the print system of the OS to cancel the print job. Consequently, the print job acquired in step S901 ends without performing printing, and the preview screen is erased.
[0067] In a case where it is determined that a cancellation instruction is not received from the user (NO in step S908) and in a case where it is determined that a print instruction is received from the user (YES in step S910), the processing proceeds to step S911. In step S911, the extension application 203 checks whether the job connection setting is on. In a case where it is determined that the job connection setting is on (YES in step S911), the processing proceeds to step S912. In step S912, the extension application 203 generates a single piece of intermediate data based on the pieces of intermediate data on the plurality of print jobs selected in the display item 401 illustrated in
[0068] In step S911, in a case where it is determined that the job connection setting is off (NO in step S911), the processing proceeds to step S914. In step S914, the extension application 203 transmits the pieces of intermediate data corresponding to the print jobs selected in the display item 401 to the print data generation software 202.
[0069] In a case where it is determined in step S603 that the print preview function is not on (NO in step S603), the processing proceeds to step S605. In step S605, the extension application 203 acquires the intermediate data. In step S606, the extension application 203 outputs the intermediate data to the print data generation software 202. As described above, the processing in
[0070] According to the present exemplary embodiment, in a system configuration as illustrated in
[0071] In the first exemplary embodiment, the extension application 203 saves a print job in the data storage area 206. Then, the extension application 203 started using receipt of another print job as a trigger acquires the saved print job saved in the data storage area 206, whereby handling a plurality of print jobs becomes available, and consequently, job connection can be achieved.
[0072] In the first exemplary embodiment, however, the following issue arises. For example, the user specifies a print queue corresponding to a printer A, enables the print preview function, and issues an instruction to perform printing. According to the instruction, intermediate data A is generated, and a preview screen based on the intermediate data A is displayed. After the preview screen is displayed, the user wishes to connect the intermediate data A to subsequent intermediate data B. In this case, the user issues an instruction to save a job on the print preview screen illustrated in
[0073]
[0074]
[0075] First, in step S1101, using print setting information included in intermediate data generated in response to the pressing performed on the print button 1502, the extension application 203 checks whether the preview setting is on. In a case where it is determined that the preview setting is on (YES in step S1101), the processing proceeds to step S1102. In step S1102, the extension application 203 checks whether the job connection setting is on. The processing in step S1102 is also performed using the print setting information. The user sets settings of the print preview function and the job connection function on the print setting screen illustrated in
[0076] In a case where the job connection function and the print preview function are enabled (which corresponds to YES in step S1102), the processing proceeds to step S1103. In step S1103, the extension application 203 sets to on a same UI process setting which indicates handling print jobs with a single UI. Then, the extension application 203 transmits a UI display request to the OS. The same UI process setting is also referred to as a “display maintenance function”.
[0077] In a case where the job connection function is not used and the print preview function for a single print job is enabled (NO in step S1102), the processing proceeds to step S1104. In step S1104, the extension application 203 sets to off the same UI process setting indicating handling print jobs with a single UI. Then, the extension application 203 transmits a UI display request to the OS.
[0078] In a case where it is determined in step S1101 that the print preview function is disabled (NO in step S1101), the processing proceeds to steps S1105 and S1106. The processes of steps S1105 and S1106 are similar to those of steps S605 and S606, and therefore the redundant descriptions are omitted.
[0079] In response to receipt of the UI display request transmitted from the extension application 203 in step S1103 or S1104, the OS performs a UI start process.
[0080] First, in step S1201, the OS determines whether the same UI process setting specified together with the UI display request is on. In a case where the same UI process setting is off (NO in step S1201), the processing proceeds to step S1202. In step S1202, the OS newly starts a UI to perform displaying a print preview on print job basis. As a result, the extension application 203 displays the print preview screen illustrated in
[0081] In a case where the same UI process setting is on (YES in step S1201), the processing proceeds to step S1203. In step S1203, the OS checks whether the extension application 203 started using a print instruction for the same print queue as a trigger is operating.
[0082] In a case where the extension application 203 started in response to a print instruction for the same print queue is operating (YES in step S1203), the processing proceeds to step S1204. In step S1204, the OS enables the same UI process setting and checks whether the extension application 203 is displaying the UI. Even in a case where the extension application 203 is operating, there is no such extension application that can process the print jobs served as the trigger for the start of the processing in
[0083] In a case where it is determined that the extension application 203 is displaying the UI (YES in step S1204), the processing proceeds to step S1205. In step S1205, the OS issues a notification notifying that jobs can be acquired, to the extension application 203 that is operating, so that the extension application 203 that is operating can process the print jobs served as the trigger for the start of the processing in
[0084]
[0085] First, in step S1301, the extension application 203 acquires intermediate data and job information regarding the print job served as the trigger for the start of the processing. Next, in step S1302, based on the intermediate data acquired in step S1301, the extension application 203 displays the print preview screen. In this processing, a single print job is displayed in the print job list on the print preview screen. While, in the first exemplary embodiment, the extension application 203 performs processing according to a user instruction after the print preview screen is displayed, in the second exemplary embodiment, the extension application 203 performs processing also in response to a notification from the OS notifying that jobs can be acquired, in addition to a user instruction. The notification notifying that jobs can be acquired is issued by the OS in step S1205.
[0086] In response to receipt of the notification notifying that jobs can be acquired in step S1303 (YES in step S1303), then in step S1304, the extension application 203 acquires intermediate data and job information regarding a print job for which the notification is received. Specifically, in a case where the extension application 203 executes processing based on the notification notifying that jobs can be acquired, the OS passes, to the extension application 203, intermediate data and job information regarding a print job served as a trigger for the issuance of the notification notifying that jobs can be acquired.
[0087] In step S1305, the extension application 203 adds the print job acquired in step S1304 to the print job list. In a case where the extension application 203 receives a different notification, indicating that jobs can be acquired, issued using another print job served as a trigger, the extension application 203 repeats steps S1303 to S1305 and adds the print job to the print job list. Consequently, it is possible to handle any number of print jobs on the print preview screen. The processes of steps S1306 to S1315 are similar to those of steps S905 to S914 in the first exemplary embodiment, and thus the redundant descriptions are omitted. The extension application 203 receives a print instruction from the user, generates intermediate data obtained by connecting the pieces of intermediate data on the plurality of print jobs in the print job list, and outputs the intermediate data to the print data generation software 202.
[0088] By the above processing, in the present exemplary embodiment, steps S1303 to S1305 are executed, whereby it is possible to add a print job to the display item 401 in the state where the display of the preview screen is maintained (while the preview screen is displayed).
Other Exemplary Embodiments
[0089] The present invention can also be achieved by performing the following process. This is the process of supplying software (a program) for achieving the functions of the above exemplary embodiments to a system or an apparatus via a network or various recording media, and of causing a computer (a CPU or a microprocessor unit (MPU)) of the system or the apparatus to read and execute the program. The program may be executed by a single computer, or may be executed by the cooperation of a plurality of computers. Not all the above processing needs to be achieved by software, and part or all of the processing may be achieved by hardware such as an application-specific integrated circuit (ASIC).
[0090] The CPU may be not only a single CPU that performs all of the processing, but also a plurality of CPUs that appropriately cooperates to perform the processing.
[0091] The present invention is not limited to the above exemplary embodiments, and can be changed and modified in various ways without departing from the spirit and the scope of the present invention. Thus, the following claims are appended to publicize the scope of the present invention.
[0092] Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
[0093] While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.