1. Field of the Invention
The present invention generally relates to an apparatus, a method, and a computer program product for forming images, and more specifically, to an apparatus, a method, and a computer program product for forming images in which an application is formed by connecting an input controller to an output controller.
2. Description of the Related Art
In recent image forming apparatuses, for example, as disclosed in Japanese Patent Application Laid-Open No. 2007-325251, customization and extension of functions are simplified by the application of a pipe-and-filter architecture to software configuration. Such an image forming apparatus to which the pipe-and-filter architecture is applied includes an input filter configured to input image data, a process filter configured to process the image data, and an output filter configured to output the image data. In the image forming apparatus, an application is formed by the combinations of filters having different functions connected via pipes each transferring the image data output from one filter to another.
Thus, in the image forming apparatus, the customization and extension of functions can be achieved by simply changing, adding, or deleting some of the filters corresponding to the functions.
In a case where one function such as a copy function is executed, a reading filter representing one of the input filters, a process filter processing the image data read by the reading filter, and a printing filter representing one of the output filters are connected to thereby execute the copy function, that is, to execute a sequence of processing from reading to printing the image data. Or, in a case where another function such as facsimile (FAX) function is executed, the reading filter, the process filter, and a fax filter representing one of the output filters are connected to thereby execute the FAX function, that is, to execute a sequence of processing from reading to faxing the image data.
However, in the aforementioned related art image forming apparatus, data formats of the image data processed by the filters unfortunately differ between types of the functions (i.e., applications).
For example, when the image forming apparatus receives a copying request, the filters process the image data output from the printing filter in a CMYK color format. When the image forming apparatus receives a fax request, the filters process the image data output from the fax filter in an MMR format.
Accordingly, when the related art image forming apparatus receives different types of requests to execute data processing, each of the filters needs to discriminate a particular type of data processing requested, and convert one image data having one data format into another image data having another data format suitable for the requested data processing type. Accordingly, in executing the data processing, the filters selected and connected via pipes for the particular type of data processing need to have a common data format, and are hence dependent on one another according to the related-art image forming apparatus. That is, if one filter has been changed to another type due to, for example, the change of the request, the other filters connected via pipes need to change their conversion contents (i.e., data format) accordingly. Thus, one filter may not operate independently of others.
Embodiments of the present invention may provide a novel and useful apparatus, method, and computer program product for forming images in which the filters can operate independently of one another in data processing.
According to an embodiment of the invention, there is provided an image forming apparatus including a plurality of input filter sections configured to control different types of input-processing performed by corresponding input devices to produce respective input image data sets each having a different input format, a plurality of output filter sections configured to control different types of output-processing performed by corresponding output devices that receive respective output image data sets each having a different output format, and an image processing section configured to be made sharable by any given one of the input filter sections and any given one of the output filter sections, and convert an image data set from an input format of the one of the input filter sections to an output format of the one of the output filter sections.
According to an embodiment of the invention, there is provided a method for forming an image in an image forming apparatus having a plurality of input filter sections controlling different types of input-processing performed by corresponding input devices to produce respective image data sets each having a different input format and a plurality of output filter sections controlling different types of output-processing performed by corresponding output devices that receive respective output image data sets each having a different output format. The method includes carrying out one of the different types of input-processing by a corresponding one of the input filter sections to produce an input image data set having a corresponding input format, converting the input image data set from the corresponding input format of the one of the input filter sections to a requested output format of one of the output filter sections, and carrying out one of the different types of output-processing by a corresponding one of the output filter sections that receive an output image data set having the requested output format.
According to an embodiment of the invention, there is provided a computer program product having instructions embedded therein which, when executed by a processor, cause an image forming apparatus having a plurality of input filter sections controlling different types of input-processing performed by corresponding input devices to produce respective image data sets each having a different input format and a plurality of output filter sections controlling different types of output-processing performed by corresponding output devices that receive respective output image data sets each having a different output format. The method includes carrying out one of the different types of input-processing by a corresponding one of the input filter sections to produce an input image data set having a corresponding input format, converting the input image data set from the corresponding input format of the one of the input filter sections to a requested output format of one of the output filter sections, and carrying out one of the different types of output-processing by a corresponding one of the output filter sections that receive an output image data set having the requested output format.
Additional objects and advantages of the embodiments will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
An image forming apparatus according to an embodiment of the invention includes a shared image processing section configured to convert an image data set having one data format into an image data set having another data format (c.f., in the related art image forming apparatus, this conversion process is performed by each of the filters according to types of data processing). The shared image processing section is provided so that the data format can be converted at the shared image processing section, and the filters are not used for the data format conversion. In this manner, the filters can operate independently of one another without being involved in keeping data format type consistency (i.e., filters are no more dependent on one another). As a result, the functions of the image forming apparatus can be simply customized and extended.
The image forming apparatus according to the embodiment of the invention further includes a memory so that a resource for carrying out the image processing can be secured regardless of application types. Accordingly, an image data set having one data format can be converted efficiently into another image data set having another data format consuming only a small amount of the memory.
A description is given below, with reference to
The scanner device 11 scans a paper-based document so as to input an image data set into the image forming apparatus 100. The plotter device 12 prints the image data set onto a recording medium such as a printer sheet to output the printer sheet printed with the image data set. The interface device 17 includes a modem and a LAN card utilized for connecting the image forming apparatus 100 to a telephone line or to networks. The interface device 17 transmits (outputs) and receives (inputs) the image data set via the networks. An operation panel 18 is utilized for a user to operate the image forming apparatus 100, an example of which is a touch-sensitive panel having a display function. A FAX device 19 is utilized for transmitting (outputting) the image data set over the telephone line to an external device via the interface device 17.
An image forming program product according to an embodiment of the invention includes programs that control the image formation device 100. The programs for the image forming apparatus (hereinafter also called “image forming program(s)”) may be distributed via a recording medium 20 or downloaded via the networks. Various types of recording media may be used as the recording medium 20 storing the image forming programs. Examples of such recording media include a magneto-optical disk, that is, a recording medium on which information is optically and electrically or magnetically recorded, a CD-ROM and a flexible disk, and a ROM or a flash memory, that is, a semiconductor memory on which information is electrically recorded.
When the recording medium 20 storing the image forming programs is placed in the driver device 13, the image forming programs are installed on the HDD 14 from the recording medium 20 via the driver device 13. The image forming programs downloaded via the networks are installed on the HDD 14 via the interface device 17.
The HDD 14 stores files and data, and the like along with the image forming programs. The memory device 15 retrieves the image forming programs from the HDD 14 and stores the programs in the memory device 15 during a computer's start-up process. The processor device 16 carries out various types of processing described later based on the image forming programs stored in the memory device 15.
The controller 200 includes a user interface layer 210, a control layer 220, an application logic layer 230, a device service layer 250, and an aspect layer 260.
The user interface layer 210 receives requests from a user of the image forming apparatus 100 or via the networks connected to the image forming apparatus 100. The user interface layer 210 transfers the received requests to the control layer 220.
The control layer 220 combines filters contained in the application logic layer 230 described later so as to carry out the requests received by the user interface layer 210.
The application logic layer 230 contains a filter group that carries out a part of functions served by the image forming apparatus 100. In the image forming apparatus 100, the control layer 220 combines filters contained in the application logic layer 230 to construct an application to attain a function. Details of the application logic layer 230 are described later.
The device service layer 250 contains program modules that control the hardware (devices). The device service layer 250 is utilized by the application logic layer 230. Details of the device service layer 250 are described later.
The aspect layer 260 controls logic of the aforementioned layers. Functions of the logic include, for example, management in an access control, a usage history and an accounting based on the usage history in the image forming apparatus 100.
The activity group 231 connects the filters combined by the control layer 220 to execute processing. The activity group 231 includes a copy activity 232, a FAX activity 233, a printer activity 234, a storage activity 235, and a multiple activity 236.
The function providing filter group 240 includes a reading filter 241, a stored document retrieving filter 242, a FAX receiving filter 243, a PC document receiving filter 244, a processing filter 245 that process the image data set input from the input filter as input filters, and a printing filter 246, a stored document registering filter 247, a FAX transmitting filter 248, and a mail transmitting filter 249 as output filters.
The reading filter 241 provides a function to read a paper-based document via the scanner device 11. The stored document retrieving filter 242 provides a function to retrieve a data set stored in a permanent region such as the HDD 14. The FAX receiving filter 243 provides a function to retrieve a data set received over the telephone line. The processing filter 245 provides a function to process the image data set input from the input filter. The printing filter 246 provides a function to output the image data set from the plotter device 12. The stored document registering filter 247 provides a function to store the data set input from the input filter in the permanent region. The FAX transmitting filter 248 provides a function to transmit the input data set over the telephone line. The mail transmitting filter 249 provides a function to transmit the input data set via the networks.
The copy activity 232 combines the reading filter 241, the processing filter 245, and the printing filter 246 to thereby attain a copying request. The FAX activity 233 combines the FAX receiving filter 243, and the FAX transmitting filter 243 or the printing filter 246 to thereby attain a FAX request. The printer activity 234 combines the PC document receiving filter 244 and the printing filter 246 to thereby attain a printing request. The storage activity 235 combines one of the reading filter 241, the FAX receiving filter 243 and the PC document receiving filter 244 with the stored document registering filter 247 to thereby attain a document storage request. The multiple activity 236 combines the filters contained in the function providing filter group 240 to thereby attain various requests.
The device service layer 250 includes a system control section 251, an image processing section 252, a document accumulation section 253, and an engine control section 254.
The system control section 251 controls an entire operation of the device service layer 250. The image processing section 252 is connected to the memory device 15 to control the memory device 15. The image processing section 252 converts an image data set having one data format input from the input filter into another image data set having another data format, so that the image can be output from the output filter. This conversion is hereinafter called “image conversion process”. The image processing section 252 carries out the image conversion process on the image data set in accordance with instructions given by the filters. The image processing section 252 according to the embodiment of the invention carries out the image conversion process on the image data set using a shared memory 151 provided in the memory device 15. Details of the shared memory 151 and the image conversion process are described later.
The document accumulation section 253 is connected to the HDD 14. The document accumulation section 253 accumulates image data sets that are to be stored permanently in the HDD 14. The document accumulation section 253 also retrieves image data sets accumulated in the HDD 14.
The engine control section 254 is connected to the scanner device 11, the plotter device 12, the interface device 17, and the FAX device 19 so as to control these devices.
The engine control section 254 includes a shared engine control section 255, a reading control section 256, a transmitting-receiving control section 257, and a printing control section 258.
The shared engine control section 255 controls the engine control section 254. The reading control section 256 controls the scanner device 11. The transmitting-receiving control section 257 controls data transmission or reception in the interface device 17 and the FAX device 19. The printing control section 258 controls the plotter device 12.
Referring to
As illustrated in
The type of request in
The shared memory 151 provided in the memory device 15 indicates a memory region in which data are written (stored) or from which the data are read (retrieved) by the image processing section 252 while the image processing section 252 carries out the image conversion process. In the image forming apparatus 100 according to the embodiment, the image processing section 252 writes data in and reads data from the shared memory 151 while carrying out the image conversion process regardless of request types. The image processing section 252 then transfers the CMYK formatted (converted) image data to the processing filter 245.
On receiving the image data set having the CMYK format from the image processing section 252, the processing filter 245 processes the received image data set and transfers the processed image data set to the image processing section 252. Specifically, the processing filter 245 carries out the processing on the received image data set, such as rotation, scale-down, scale-up, and aggregation of the image data set. On receiving the processed image data set from the processing filter 245, the image processing section 252 transfers the processed image data set to the printing filter 246. Thereafter, the printing filter 246 outputs the transferred image data set by use of the plotter device 12.
Referring now to
In
Accordingly, each of the filters simply transfers the image data set along with the accompanying information on the request type to the image processing section 252, and need not carry out any type of processing of the image conversion process itself.
In the example, the input filter carries out processing, such as, “transfer the image data set to the image processing section 252 on receiving the image data set”. Likewise, the processing filter 245 carries out processing, such as, “process the image data set transferred from the image processing section 252 and transfer the processed image data set to the image processing section 252”. Further, the output filter carries out processing, such as, “output the image data set transferred from the image processing section 252 without modification”.
In this manner, the filters do not operate dependent on one another but rather operate independently of one another.
In the image forming apparatus 100 according to the embodiment, since the image conversion process is carried out by writing (storing) data in and reading (retrieving) data from the shared memory 151 regardless of types of requests, the capacity of the memory provided in the image forming apparatus 100 may be made to be small. Thus, the image forming apparatus 100 may be manufactured at low cost.
Below, a process in which the image conversion process is controlled by the shared memory 151 is described.
First, a process in which an image data set subjected to the image conversion process is received from the input filter, transferred from the input filter to the image processing section, and further transferred from the image processing section to the output filter is described.
In the image forming apparatus 100, when the input filter inputs an image data set, the input filter stores the input image data set to a memory resource (i.e., shared memory 151) until it has received all data (complete image data set). Likewise, when the image processing section 252 converts the image data set input by the input filter, the image processing section 252 carries out a conversion process on the image data set received from the input filter by writing (storing) the image data set in and reading (retrieving) the stored image data set from the shared memory 151. When the output filter outputs the converted image data set, the output filter retrieves the converted image data set from the shared memory 151 via the image processing section 252. Note that the processing filter is, in practice, connected between the input filter and the output filter, so that the image data set is also received or transferred between the processing filter and the image processing section. However, the descriptions thereof are omitted from
The image processing section 252 according to the embodiment will not initiate the image conversion process until a minimum processible image unit of the image data set is transferred from the input filter. Likewise, the output filter will not initiate the output processing until a minimum processible image unit of the image data set is formed.
The minimum processible image unit of the image data set varies according to the type of, for example, the input filter and the output filter. For example, a block unit of the image data set is the minimum processible image unit of the image data set in a transmission-reception type of filter. An input filter transmission-reception type of filter includes, for example, the FAX receiving filter 243 and the PC document receiving filter 244. An output filter transmission-reception type of filter includes, for example, the FAX transmitting filter 248 and the mail transmitting filter 249.
The FAX receiving filter 243 and the FAX transmitting filter 248 cause the transmitting-receiving control section 257 to control the FAX device 19 in the engine control section 254 to thereby transmit and receive the image data set. Likewise, the PC document receiving filter 244 and the mail transmitting filter 249 cause the transmitting-receiving control section 257 to control the interface device 17 to thereby transmit and receive the image data set.
In a case where the reading filter 241 is selected as the input filter and the printing filter 246 is as the output filter, a band unit is determined to be the minimum processible image unit. The reading filter 241 causes the reading control section 256 in the engine control section 254 to control the scanner device 11 to thereby scan the image data set. The printing filter 246 controls the plotter device 12 to print the image data set.
In a case where the stored document retrieving filter 242 is the input filter and the stored document registering filter 247 is the output filter, a page unit is determined to be the minimum processible image unit. The stored document retrieving filter 242 and the stored document registering filter 247 control the document accumulation section 253 to input the image data set to or output the image data set from the HDD 14.
In a case where the image data set is divided into segments and the segments of the image data set are received from the reading filter (scanner device), transferred from the reading filter to the image processing section, and further transferred from the image processing section to the printing filter (plotter device) as shown in the example of
The image data delay is caused due to lack of resources, such as the image processing section 252, and the memory 151 so that there is a delay before processing can be carried out. In order to collect all the segments of the image data set without the image data delay, the resources such as the image processing section 252, the memory 151, and the like need to be secured.
Examples of the case where all the segments of the image data set need to be collected without the image data delay include cases where output modes are a printing mode, a document storing mode, and the like.
If the output mode is the printing mode, all the segments of the image data set for a page need to be sequentially output to the printing filter 246 (plotter device 12) without the image data delay. Otherwise, a delayed segment of the image data set results in an abnormal image portion (image defect) appearing in the output image (printed image) as shown in
If the output mode is the document storing mode, the image processing section 252 and the stored document registering filter 247 need to collect the segments of the original image data set for a page (a page unit) such that the output image (storing image) includes no image defect. Note that in this case, the input filter has already obtained the entire image data set.
Examples of the case where all the segments of the image data set are ultimately collected despite the delay in arrival of some image data segments include a case where the output mode is a FAX transmission mode, and the like.
According to the embodiment of the invention, the delay in receiving the image data segments from a reading filter (scanner device), transferring the image data segments from the reading filter to the image processing section, and further transferring the image data segments from the image processing section to the printing filter (plotter) can be prevented by securing resources such as the image processing section 252 or the shared memory 151.
Below, a process in which resources are secured in the embodiment of the invention is described.
The engine control section 254 according to the embodiment of the invention secures resources in two types of control systems in receiving the image data set from the reading filter, transferring the image data set from the reading filter to the image processing section, and further transferring from the image processing section to the printing section. The two types of control systems are hereinafter called a “synchronous control system” and a “parallel control system”.
The synchronous control system herein is defined as a control system in which one process is synchronized with another process. In the synchronous control system, the input device is activated in synchronization with the output device. Specifically, according to this embodiment, the scanner device 11 operates in synchronization with the plotter device 12 while the image data set is input to the scanner device 11 and output to the plotter device 12. In the synchronous control system, a set of the image data segments is received from the input filter, transferred from the input filter to the image processing section 252, and further transferred from the image processing section 252 to the output filter without a time gap (i.e., without image data delay) between the input filter, the image processing section 252, and the output filter.
The parallel control system herein is defined as a control system in which one process is deactivated when another process is activated. In the parallel control system, the scanner device 11 is deactivated when the plotter device is activated to be in operation. According to this embodiment, since all the segments of the image data set have already been input to the input filter, it is possible to process all the input segments of the image data set repeatedly after the scanner device 11 is deactivated. Specifically, in the parallel control system, having received a set of image data segments from the scanner device 11, the scanner device is deactivated, and the set of image data segments transferred to the image processing section 252 are repeatedly processed to be transferred to the output filter without a time gap between the image processing section 252 and the output filter.
Referring to
In the image forming apparatus 100 according to the embodiment of the invention, a table containing information on processing types in relation to the synchronous control system or the parallel control system can be stored in the HDD 14, or the like.
According to this embodiment, when plural sets of images need to be simultaneously processed; that is, when plural pages of the image data set are aggregated in one page as shown in a table T of
When plural image data sets are repeatedly processed; that is, when an input image is output (printed) as plural image data sets, the synchronous control system is not applied to the printing filter 246 (printing filter 246 does not operate in the synchronous control system). When two copies are made from a document, the parallel control system is applied to the image processing section 252 and the plotter device 12 (image processing section 252 and plotter device 12 operate in the parallel control system).
Below, operation of the image forming apparatus 100 according to the embodiment is described with reference to
The sequence diagram in
When the image forming apparatus 100 receives a copying request, the reading filter 241, the processing filter 245, and the printing filter 246 are combined via the control layer 220. In particular, these filters are combined by the copy activity 232 in the application logic layer 230. Thereafter, the copying request is transmitted to the system control section 251 in the device service layer 250.
On receiving the copying request, the system control section 251 inquires of the reading control section 256 via the shared engine control section 255 of the engine control section 254 about the type of control system suitable for the scanner device 11 (Steps S1 and S2). The system control section 251 inquires of the image processing section 252 transferring or receiving the image data about the type of the control system (Step S3). The system control section 251 inquires of the printing control section 258 via the shared engine control section 255 about the type of the control system of the plotter device 12 (Steps S4 and S5). The system control section 251 finally determines the type of control system that is best suited to the system control section 251 based on the results (responses) of inquires made at steps S1 to S5 (Step S6). Details of the process in which the final type of the control system is determined by the system control section 251 are described later.
Referring still to
The system control section 251 inquires of the reading control section 256 as to whether a resource can be secured (Step S7). The reading control section 256 checks as to whether the scanner device 11 can be activated (Step S8), and the obtained result is returned to the system control section 251 (response). The system control section 251 inquires of the printing control section 258 as to whether a resource can be secured (Step S9). The printing control section 258 checks as to whether the plotter device 12 can be activated (Step S10), and the obtained result is returned to the system control section 251 (response). The system control section 251 inquires of the image processing section 252 as to whether a resource can be secured (Step S11). The image processing section 252 checks as to whether the shared memory 151 (see
The system control section 251 determines whether to execute the received request based on the result of the above described (Steps S7 to S11) resource securing inquiry (Step S12). Details of the process as to whether to execute the received request as determined by the system control section 251 are described later.
On determining to execute the received copying request, the system control section 251 sets the synchronous control system to the reading control section 256, printing control section 258, and the image processing section 252 (Steps S13, S14, and S15). On setting the control system to the reading control section 256, printing control section 258, and the image processing section 252, the system control section 251 instructs the reading control section 256 to read the image data set (Step S16).
On receiving the instruction from the system control section 251, the reading control section 256 instructs the image processing section 252 to secure a resource. Specifically, the reading control section 256 instructs the image processing section 252 to secure a resource of the shared memory 151 required for inputting the image data set (Step S17). The image processing section 252 notifies the reading control section 252 of the result as to whether the shared memory 151 (resource) has been secured. On receiving the result, the reading control section 256 notifies the shared engine control section 255 the result as to whether the shared memory 151 has been secured (Step S18).
Provided that the share memory 151 has been secured in Step S18, the system control section 251 subsequently instructs the image processing section 252 to obtain the image data set (Step S19). The image processing section 252 then secures the resource (shared memory 151) required for the image conversion process (Step S20). The image processing section 252 then notifies the shared engine control section 255 that the resource required for the image conversion process has been secured (Step S21).
Subsequently, the system control section 251 instructs the printing control section 258 to obtain the image data set (Step S22). The printing control section 258 instructs the image processing section 252 to secure a resource. Specifically, the reading control section 256 instructs the image processing section 252 to secure the shared memory 151 required for printing the image data set (Step S23). The image processing section 252 notifies the printing control section 258 of the result as to whether the shared memory 151 (resource) has been secured. On receiving the result, the printing control section 258 notifies the shared engine control section 255 of the result as to whether the shared memory 151 has been secured (Step S24).
The system control section 251 according to the embodiment implements plural settings required for obtaining the image data set when the system control section 251 instructs the reading control section 256, the image processing section 252, and the printing control section 258 to obtain the image data sets (Steps S16, S19, S22). Details of the settings determined by the system control section 251 are described later.
On securing all the resources required for executing the copying request, the shared engine control section 255 instructs the reading control section 256 to obtain the image data set (Step S25). On receiving the instruction, the reading control section 256 instructs the scanner device 11 to scan the images (Step S26). The scanner device 11 scans the images of the document to obtain a scanned image data set (Steps S27, S28). The image data set scanned by the scanner device 11 is transferred to the image processing section 252 via the reading control section 256 (Steps S29, S30).
The image processing section 252 carries out the image conversion process on the received image data set into an image data set having the CMYK format that can be processed by copying processing (Step S31). On completing the image conversion process, the image processing section 252 transfers the image data set having the CMYK format to the printing control section 258 and instructs the printing control section 258 to output the transferred image data set (Step S32). The printing control section 258 transfers the image data set to the plotter device 12 to output the image data set (Step S33). The image forming apparatus 100 according to the embodiment of the invention executes the copying request in the aforementioned manner.
Accordingly, the image forming apparatus according to the embodiment of the invention executes a desired copying request after having secured all the resources required for executing the desired copying request. In this manner, the image forming apparatus according to the embodiment of the invention carries out the image conversion process by storing data in and retrieving data from the shared memory 151.
Referring now to
The system control section 251 according to the embodiment of the invention respectively sets a reading control request, an image processing request, and a printing control request to the reading control section 256, the image processing section 252, and the printing control section 258 when instructing these requests at Steps S16, S19, S19, and S22. At this moment, the system control section 251 provides identifiers identifying a type of the image data set (hereinafter called “image ID”), and associates the image ID with requests addressing to corresponding components (sections).
As the example in
As illustrated, the system control section 251 according to the embodiment of the invention is capable of setting the received requests (i.e., reading control request, image processing request, and printing control request) to the corresponding reading control section 256 controlling image data input, image processing section 252 carrying out the image conversion process, printing control section 258 controlling image data output all at once so as to execute the copying request (in this example, the copying request consists of the reading control request, image processing request, and printing control request). As described above, these settings are associated with the image ID. Thus, even if the image data set is divided into segments to be processed in the synchronous control system, each of the segments of the image data set can be received from or transferred to an appropriate filter.
In the system control section 251 according to the embodiment of the invention, in a case where the image data set is unable to output after having set the requests all at once, an input processing of the image data set is controlled by the reading control section 256 independently of other types of processing that are controlled by the image processing section 252 and the printing control section 258. In this case, the request for inputting the image (i.e., reading control request in
For example, if the request is a copying request consisting of a reading control request, an image processing request, and a printing control request in this example and the printing control section 258 executes the copying request after having set the requests all at once but cannot print due to out-of-paper, the system control section 251 independently cancels the printing control request that has been set to the printing control section 258. Thereafter, the system control section 251 enables the reading control request set to the reading control section 256 and the image processing request set to the image processing section 252 to continue their processing.
Next, a process in which a type of a control system is determined is described with reference to
The system control section 251 receives the results of the inquiries from each of the reading control section 256, the image processing section 252, and the printing control section 258 about the type of control system to be applied, and determines whether the synchronous control system is applicable to each of the reading control section 256, the image processing section 252, and the printing control section 258 (Step S171). If the synchronous control system is applicable to all the reading control section 256, the image processing section 252, and the printing control section 258, the system control section 251 determines the synchronous control system to be applied as the control system at Step S171. However, if the parallel control system is applicable to one of the reading control section 256, or the image processing section 252, the system control section 251 determines the parallel control system to be applied as the control system at Step S171.
If the system control section 251 determines the synchronous control system as the control system, the system control section 251 examines in which types of the control system the image data set is processed (Step S172). Thereafter, the system control section 251 determines whether the synchronous control system is applicable based on the result at Step S172. The type of the control system for the image data set is determined by referring to the table T shown in
If, for example, the system control section 251 causes the processing filter 245 to simultaneously process plural image data sets, the system control section 251 determines that the synchronous control system is inapplicable. As a result, the parallel control system is applied as the control system in this case. Likewise, if the system control section 251 causes the printing filter 246 to sequentially and repeatedly process plural image data sets, the system control section 251 determines that the synchronous control system is inapplicable. As a result, the parallel control system is applied instead of the synchronous control system in this case.
Next, a description is given below regarding determining whether or not a request to be executed with reference to
The system control section 251 determines whether all the resources required for executing a request (e.g., copying request) received by the image forming apparatus 100 (hereinafter “a received request”) are secured (Step S181).
If all the resources required for executing the received request are secured at Step S181, the system control section 251 executes the received request (consisting of plural requests such as the reading control request, the image processing request, and the printing request) in the synchronous control system (i.e., executing the requests required for the received request all at once).
If, in contrast, not all the resources for executing the received request are secured at Step S181 but the received request is still initiated in the synchronous control system, the processing is suspended at the time at which one of the resources has failed to be secured. At this moment, the resource(s) already secured still remain allocated. Such resources may not be reallocated for executing another received request. Thus, another received request will not be executed even if components related to such particular request are operable.
In order to make such resources to be reallocated when one of the resources has failed to be secured, the system control section 251 determines whether the parallel control system is applicable (Step S182). When the reading control section 256 fails to secure a resource, the system control section 251 determines that the parallel control system is not applicable; thereby making the reading control section 256 to wait until the resource has been deallocated.
When the system control section 251 determines that the reading control section 256 can secure a resource (Step S183), the system control section 251 determines the type of the control system as the parallel control system to thereby execute the received request. In this case, the system control section 251 causes the document accumulation section 253 to store the image data set read by the reading control section 256 so that the stored image data set is processed after other resources have been deallocated.
According to the embodiment of the invention, since an input instruction or output instruction of the image data set received from hardware (e.g., scanner device 11, plotter device 12) triggers the execution of the received request, other types of requests can simultaneously be received. The received requests are enabled when the hardware is an executable state. For example, if the hardware is the scanner device 11, the executable state is defined as a state in which a polygon mirror is secured in the scanner device 11 and a document is transferred to and located at a starting position of scanning. If the hardware is the plotter device 12, the executable state is defined as a state in which the plotter device 12 is ready to form images and the transfer sheet (printer sheet) is transferred to and located at a starting position of image transferring.
According to the embodiment of the invention, the filters can operate independently of one another.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority or inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
This patent application is based on Japanese Priority Patent Application No. 2008-237129 filed on Sep. 16, 2008, the entire contents of which are hereby incorporated herein by reference.
Number | Date | Country | Kind |
---|---|---|---|
2008-237129 | Sep 2008 | JP | national |