1. Field of the Invention
The present invention generally relates to control performed when a printer driver is uninstalled and, more particularly, to an information processing apparatus, method for uninstalling a printer driver, and a recording medium.
2. Description of the Related Art
Conventionally, in an environment in which a plurality of printer drivers is installed in a client computer, several methods or inventions have been proposed with respect to various types of settings performed when the printer drivers are uninstalled.
Japanese Patent Application laid-Open No. 2001-92642 proposes means for notifying a user of a procedure for an operation for changing various types of setting contents relating to software if it is determined that an operational failure may occur in an operating system (OS) at the time of uninstallation, and for changing the setting contents.
On the other hand, a proposal considering not only an operational failure but also convenience to a user after uninstallation has been made. Japanese Patent Application Laid-Open No. 2004-287764 proposes control to urge a user to set, when a printer driver to be uninstalled is set as a usually used printer driver, a printer driver different from the printer driver to be uninstalled as a usually used printer driver.
An issue to be solved by the present invention relates to a system environment in which an OS holds a cross-sectional print setting for printer drivers, for example, a system environment that operates on various types of OSs on a UNIX (registered trademark) basis such as Linux (registered trademark) subsequent to Mac OS X. In this system environment, the OS also holds information relating to a preset of a printer driver in a cross-sectional manner for printer drivers. Therefore, a conventional uninstaller for uninstalling a printer driver deletes a group of modules for controlling an installed printer driver and a setting file describing information relating to a printer.
However, such an uninstaller does not perform special processing for a preset. Therefore, a preset storing a setting relating to the uninstalled printer driver may remain as a preset, which makes no practical sense for a user, in a system even after the uninstallation. Although such a phenomenon in which a preset remains in a system is not an operational failure, it is undesirable in consideration of convenience to the user.
The present invention is directed to a method for uninstalling, from an information processing apparatus which registers a print setting in a print queue registered by a printer driver as a preset in an operating system in a cross-sectional manner for printer drivers, the printer driver, and then preventing the preset storing a setting relating to the uninstalled printer driver from remaining as a preset, which makes no practical sense for a user, in the information processing apparatus.
According to an aspect of the present invention, an information processing apparatus capable of performing printing by registering a print setting in a print queue registered by a printer driver as a preset in an operating system in a cross-sectional manner for a plurality of printer drivers and calling the registered preset as a print setting in a print queue registered by one of the printer drivers includes an extraction unit configured to extract, out of the print setting, a print setting included in only a printer driver to be uninstalled, an acquisition unit configured to acquire the print setting as the preset registered in the operating system, a first determination unit configured to determine whether the print setting as the preset includes the print setting included in only the printer driver to be uninstalled, a first deletion unit configured to delete, when the first determination unit determines that the print setting as the preset includes the print setting included in only the printer driver to be uninstalled, information relating to the print setting included in only the printer driver to be uninstalled from the preset, a comparison unit configured to compare the print setting as the preset with a default value of the print setting in the print queue, a second deletion unit configured to delete, when it is determined by the comparison unit that there is no difference between the print setting as the preset and the default value for the print setting in the print queue, the preset, and an uninstallation unit configured to uninstall the printer driver to be uninstalled.
Further features and aspects of the present invention will become apparent from the following detailed description of exemplary embodiments with reference to the attached drawings.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the invention and, together with the description, serve to explain the principles of the invention.
Various exemplary embodiments, features, and aspects of the invention will be described in detail below with reference to the drawings.
The computer 101 operates on an OS for holding a cross-sectional print setting for printer drivers. Examples include computers that operate on OSs subsequent to Mac OS X. OSs subsequent to Mac OS X typically use Common UNIX™ Printing System (CUPS) as a standard printing system. However, the present invention is not limited to the computers that operate on the OSs subsequent to Mac OS X. The present invention is also applicable to any computer capable of performing printing by registering a print setting in a print queue registered by the printer driver as a preset in an OS in a cross-sectional manner for a plurality of printer drivers and calling the registered preset as a print setting in a print queue registered by any one of the printer drivers. The printing system is not limited to the CUPS. The CUPS is used as a standard printing system in OSs subsequent to Mac OS X, and operates on OSs subsequent to Mac OS X (usually operates as a demon). In the present exemplary embodiment, the CUPS is included in an OS package. Accordingly, even an operation described as performed by the OS may include an operation performed by the CUPS. The CUPS may be installed separately from the OS. The CUPS uses Internet Printing Protocol (IPP) to manage a print job and a print queue. Further, the CUPS uses PostScript Printer Description (PPD) to describe a function usable by a printer.
The computer 101 further includes a video controller 208, and an external storage device controller 209. A display device 214 is connected to the video controller 208. The video controller 208 controls output to the display device 214. A nonvolatile external storage device 215 (e.g., a hard disk) for storing an application program or large-capacity data is connected to the external storage device controller 209. The external storage device controller 209 controls reading and writing of data from and to the external storage device 215.
The computer 101 further includes an external media device controller 210. An external media control device 216 is connected to the external media device controller 210. The external media device controller 210 controls reading and writing of external media (a computer-readable recording medium having a program or data recorded thereon, for example, a compact disk (CD)-ROM or a digital versatile disk (DVD)-ROM) set in the external media control device 216. When an application or driver software is provided by the external media, for example, a user can set the media such as the CD-ROM in the external media control device 216, and read the program into the computer 101.
The computer 101 further includes a network I/F controller 211. The network I/F controller 211 controls connection to the network 104. The computer 101 can communicate with the other devices (102, 103) connected to the computer network 104 using the network I/F controller 211.
Generally, an initial program for starting the computer 101 and a basic program for controlling each module in the computer 101 are stored in the ROM 205. An OS (including a printing system), an application, and a printer driver are stored in the external storage device 215. When power to the computer 101 is turned on, the CPU 203 first executes a program stored in the ROM 205 for starting the computer 101. The CPU 203 loads the OS stored in the external storage device 215 into the RAM 204 by executing the program, and then transfers a control authority to the OS. An operation performed by the CPU 203 executing the OS will be described as performed by the OS.
The OS reads a necessary module or printer driver into the RAM 204 from the external storage device 215. Further, the OS reads a necessary application into the RAM 204 from the external storage device 215, and executes the application by an instruction from a user. The external media such as the CD-ROM supply a printer driver, an installer of the printer driver, and an uninstaller of the printer driver, which will be described in the present exemplary embodiment. The user sets the external media in the external media control device 216. The CPU 203 reads the printer driver, the installer, and the uninstaller into the RAM 204 from the external media, as needed, and stores the printer driver, the installer, and the uninstaller in the external storage device 215.
A printer driver will be described below.
The graphic rendering module 302 renders print data received from the printing system in the OS into print data (a page description language (PDL)) that can be understood by a printer. The UI control module 303 is based on the printer specification description file 304 describing a function usable in the printer (printer specification information) to display the function usable in the printer and accept a setting from a user. The color processing module 305 performs color processing based on an integrated communication controller (ICC) profile. The input/output control module 306 sends the print data to the printer.
A procedure for installing the printer driver thus configured into the computer 101 will be described below.
In step S401, when the user first performs an operation for starting the installer, the OS detects this operation to start the installer. An operation performed by the CPU 203 executing the OS will be described as performed by the OS with the OS as a subject. An operation performed by the CPU 203 executing the installer on the OS will be described as performed by the installer with the installer as a subject.
In step S402, the started installer reads out a printer driver module from the CD-ROM or the like, to store the printer driver module in a predetermined location of the external storage device 215. A storage location of the printer driver module differs depending on a printing system. As an example, in the CUPS, a printer driver module is stored for each vendor below a directory “/Library/Printers/”. The printer driver module can also be stored for each type of printer driver below the directory for each vendor. When there are different printer drivers “PDL1” and “PDL2” for a vendor “ABC”, for example, a directory “/Library/Printers/ABC/PDL1” and a directory “/Library/Printers/ABC/PDL2/” are first generated respectively for the printer drivers “PDL1” and “PDL2”, and the printer drivers “PDL1” and “PDL2” are respectively stored below the corresponding directories.
While the installation of the printer driver is thus completed, the user is required to register the printer in the printing system using the printer driver to actually enable output to the printer. The printer to be registered in the printing system will be hereinafter referred to as a print queue or simply referred to as a queue.
In step S501, when a user performs an operation for opening a printer registration list dialog (hereinafter referred to as a print queue list dialog) 601 (
The flowchart illustrated in
A control 705 designates a printer driver used when the print queue is registered. The OS lists printer drivers listed in the control 705 and stored below the printer driver storage directory (“Library/Printers”) of the OS, described above.
In the example illustrated in
The flowchart illustrated in
A back-end module 807 is provided by the OS 802, and is used to transfer print data generated by the graphic rendering module 803 to the input/output control module 808. The input/output control module 808 that has received the print data from the back-end module 807 sends the print data to the printer. The OS 802 generates registered print queue information 809 and a printer specification description file 810 in the processes for print queue registration illustrated in
In step S505 illustrated in
In step S505 illustrated in
In step S505, the OS 802 registers a printer specification description file 806 in the printing system. The registration work is performed as follows. In
In
As the functional specifications, one function is described from a line 1006 starting with “*OpenUI” to a line 1010 starting with “*CloseUI”. The line 1006 starts with “*OpenUI”, followed by a function name having “*” added to its head. The function name is followed by a colon “:”, further followed by a type at the time of selection of the function. The type includes “PickOne” and “Boolean”. “PickOne” indicates that this function selects one of options. “Boolean” indicates that this function is controlled by On/Off.
A line 1006 includes a function “*PageSize”, and indicates that this function selects one of options. A line 1007 subsequent to the line 1006 describes a default value of this function. This line 1007 starts with “*Default”, followed by the function name, which has been defined in the previous line 1006. The line 1007 indicates that the default of the function “PageSize” is “A4”. One of the options of the function is described in each of lines from the subsequent line 1008 to a line 1010 starting with “*CloseUI”. For example, the line “1008” indicates that the one option of the function “PageSize” is “A3”. The line “1009” indicates that the one option of the function “PageSize” is “A4”. The function “PageSize” selects a page size, and the page size includes a large number of options. Therefore, options in the middle are omitted. The last description of this function is in a line 1010. This line 1010 starts with “*CloseUI”, followed by the function name described in the line 1006 starting with “*OpenUI”. The one function is thus described.
A block of the subsequent lines 1011 to 1016 describes another function. While overlapped description is not repeated, this block includes a function “Duplex”, and indicates that this function selects any one of options, and the options include “None”, “Simplex”, and “Duplex”. Actually, “*Duplex” represents a function of designating two-sided printing. “None” conforms to a default setting of the printer because printing is not designated, and “Simplex” and “Duplex” respectively mean one-sided printing and two-sided printing.
A method for registering the printer specification description file 806 will be described below. The OS 802 acquires the printer specification description file 806 corresponding to a printer to be registered from the UI control module 805, and stores the printer specification description module 806 in a predetermined location of the printing system, as illustrated in
The printer specification description file 806 in the print queue to be registered is thus stored in the predetermined location of the printing system, as illustrated in
Setting of a print queue and a preset will be described below.
In
A function inherent in a printer can be set in another portion. If the printer has a large number of functions, there is a method for switching a function group by a control 1206 without displaying all the functions at one time.
In the control 1206, a function related to “finishing” is displayed. The function related to finishing includes one-sided/two-sided designation 1207, stapling designation 1208, and bookbinding printing designation 1209. There are several other functions. Another function group can be switched by being designated in the control 1206.
In this dialog, when the user desires to switch a printer at an output destination, the print key selection control 1202 changes the printer. A print queue “PrinterA” is currently selected in the print dialog 1201. When the print queue selection control 1202 is clicked, to select a print queue “PrinterB”, for example, prints are output to the print queue “PrinterB”.
A preset setting will be described below. “Preset” is a print setting frequently used by a user, and is given a particular name and stored. For example, a default of a print queue is set to one-sided and 1-up printing. When the user frequently uses two-sided and 2-up printing, the default setting is given a name and stored as a preset in a manner described below. After the print dialog 1201 is opened and a default of a print queue is set to two-sided and 2-up printing, “store in another name” is selected in the preset selection control 1203, and a name of a preset to be stored is input so that the setting can be given a name and stored as a preset. The preset is stored in the preset description file 811 illustrated in
The preset described in the lines 1302 and 1303 is named “Standard”, and a setting content of the preset is “NULL”. The preset description file 811 illustrated in
An identifier “ABC.” precedes each of the setting items to distinguish the setting items for each of vendors because the preset is managed by the OS 802 and is common to the vendors when used. As described above, the preset description file 811 shows the types of presets and a setting content of each of the presets.
The flow in uninstalling a printer driver will be then described.
A user performs an operation to start the uninstaller, which is stored in the external storage device 215. The CPU 203 detects this operation to load an uninstaller program into the RAM 204 from the external storage device 215, and executes the program on the OS. More specifically, in step S1401, the OS 802 starts the uninstaller. An operation performed by the CPU 203 executing the uninstaller on the OS will be described as performed by the uninstaller with the uninstaller as a subject.
In step S1402, the uninstaller refers to the preset description file 811 illustrated in
If it is determined that there exists no preset other than “Standard” (NO in step S1402), the processing proceeds to step S1412. In step S1412, the uninstaller directly uninstalls the printer driver, and then the processing ends. On the other hand, if it is determined that there exists a preset other than “Standard” (YES in step S1402), the processing proceeds to step S1403.
In step S1403, the uninstaller refers to the printer specification description file 806 illustrated in
On the other hand, if it is determined that there is a print setting item included in only the printer driver to be uninstalled (YES in step S1403), the processing proceeds to step S1404. In step 1404, the uninstaller performs control to perform the following processes (corresponding to steps S1405 to S1410) for all presets other than “Standard”.
In step S1405, the uninstaller first extracts print setting items for target presets. In step S1406, the uninstaller determines whether the print setting items extracted in step S1405 include a print setting item included in only the printer driver to be uninstalled (first determination processing). If it is determined that there exists no print setting item included in only the printer driver to be uninstalled (NO in step S1406), the processing proceeds to step S1411. In step S1411, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset.
On the other hand, if it is determined that there exists a print setting item included in only the printer driver to be uninstalled (YES in step S1406), the processing proceeds to step S1407. In step S1407, the uninstaller deletes information relating to the print setting item included in only the printer driver to be uninstalled in the preset description file 811 illustrated in
In step S1408, the uninstaller further refers to the printer specification description file 806 illustrated in
In step S1409, the uninstaller compares a value of each of the print setting items for the presets with the default value extracted in step S1408 to determine whether there is a difference therebetween. As a result, if there is a difference between the value of the print setting item for the preset and the default value (YES in step S1409), the processing proceeds to step S1411. In step S1411, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset.
On the other hand, if there is no difference between the value of the print setting item for the preset during the processing and the default value extracted in step S1408 (NO in step S1409), the processing proceeds to step S1410. In step S1410, the uninstaller deletes information relating to the preset from the preset description file 811 illustrated in
After a series of processes in steps S1405 to S1410 is performed for all the presets other than “Standard”, the processing proceeds to step S1412. In step S1412, the uninstaller uninstalls the printer driver, and then the processing ends. By the uninstallation processing, the uninstaller deletes a printer driver module stored in a predetermined location of the external storage device 215 in step S402 illustrated in
A procedure for updating will be described using a specific example of a printer driver and a preset. In the case, preconditions relating to the printer driver and the preset are respectively illustrated in
On the other hand, as setting for presets, “Preset P”, “Preset Q”, “Preset R”, and “Preset S” are registered, as illustrated in
On this premise, consider a case where a user uses the uninstaller to uninstall the printer driver “Driver D”. A procedure for updating a preset setting at this time will be described with reference to
In step S1401, when the user performs an operation to start an uninstaller for uninstalling the printer driver “Driver D”, which is stored in the external storage device 215, the OS detects this operation to start the uninstaller for uninstalling the printer driver “Driver D”. The uninstaller for uninstalling the printer driver “Driver D” is referred to as an “uninstaller”.
In step S1402, the uninstaller then determines whether there exists a preset other than “Standard”. At this time “Preset P”, “Preset Q”, “Preset R”, and “Preset S” are registered as presets. Accordingly, in step S1403, the uninstaller then determines whether there is a print setting item included in only the printer driver “Driver D” to be uninstalled.
Since it is determined that there is “Punch” as the print setting item included in only the printer driver “Driver D” (YES in step S1403), as illustrated in
In step S1405, the uninstaller first extracts print setting items for the preset “Preset P”. In step S1406, the uninstaller determines whether the print setting items for the preset “Preset P” include the print setting item “Punch”. Since the preset “Preset P” has information relating to the print setting item “Punch” (YES in step S1406), as illustrated in
In step S1408, the uninstaller then refers to the printer specification description file 806 including print queues corresponding to the printer drivers “Driver A”, “Driver B”, and “Driver C” other than “Driver D” to extract a default value of print setting items included in each of the printer drivers.
In step S1409, the uninstaller compares a value of each of the print setting items for the preset “Preset P” with the extracted default value, and determines whether there is a difference therebetween. At this time point, the preset “Preset P” has only the print setting item “Copies”. Therefore, the uninstaller compares the value of the print setting item “Copies” with the extracted default value. If there is no difference between the extracted default value and the value for the preset “Preset P” (NO in step S1409), the processing proceeds to step S1410. In step S1410, the uninstaller deletes all the information relating to the preset “Preset P” from the preset description file 811. On the other hand, if there is a difference between the extracted default value and the value for the preset “Preset P” (YES in step S1409), the preset “Preset P” remains in the preset description file 811 while having information relating to the print setting item “Copies”.
Similarly, processes are also performed for the print setting items “Preset Q”, “Preset R”, and “Preset S”. Each of the presets “Preset R” and “Preset S” includes a print setting item “Punch”. Therefore, in step S1407, the uninstaller deletes the print setting item “Punch” from the preset description file 811. In steps S1408 and S1409, the uninstaller compares values of each of the print setting items remaining as a result of the deletion for the presets “Preset R” and “Preset S” with the extracted default value. In step S1409, the uninstaller determines whether there are differences therebetween. If there are no differences therebetween (NO in step S1409), the processing proceeds to step S1410. In step S1410, the uninstaller deletes all information relating to the remaining print setting items from the preset description file 811. On the other hand, if there are differences between the extracted default value and the values for the presets “Preset R” and “Preset S”, the presets “Preset R” and “Preset S” remain in the preset description file 811.
If is assumed that there are no differences between the values of the print setting item for the presets “Preset P” and “Preset R” and the default value, and there are differences between the values of the preset setting item for the presets “Preset Q” and “Preset S” and the default value. In this case, the preset description file 811 after the series of processes enters a state as illustrated in
A second exemplary embodiment of the present invention will be described below with reference to
In step S1602, the uninstaller first extracts print setting items for target presets. In step S1603, the uninstaller determines whether the print setting items extracted in step S1602 include a print setting item included in only the printer driver to be uninstalled. If it is determined that there is no print setting item included in only the print setting item (NO in step S1603), the processing proceeds to step S1612. In step S1612, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset.
On the other hand, if it is determined that there is a print setting item included in only the printer driver to be uninstalled (YES in step S1603), the processing proceeds to step S1604. In step S1604, the uninstaller displays the preset setting change notification dialog illustrated in
In step S1605, when the user inputs indication (judgment) whether information relating to a print setting item should be deleted from the preset setting change notification dialog illustrated in
If it is determined that the information should not be deleted (inhibited from being deleted) (NO in step S1605), the processing proceeds to step S1612. In step S1612, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset. On the other hand, if it is determined that the information should be deleted (allowed to be deleted) (YES in step S1605), the processing proceeds to step S1606. In step S1606, the uninstaller deletes information relating to the print setting item included in only the printer driver to be uninstalled in the preset description file 811 illustrated in
In step S1607, the uninstaller further refers to the printer specification description file 806 illustrated in
In step S1608, the uninstaller compares a value of each of the print setting items for the preset with the default value extracted in step S1607 to determine whether there is a difference therebetween. As a result, if there is a difference therebetween (YES in step S1608), the processing proceeds to step S1612. In step S1612, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset.
On the other hand, if there is no difference between the value of the print setting item for the preset during the processing and the default value extracted in step S1607 (NO in step S1608), the processing proceeds to step S1609. In step S1609, the uninstaller displays a preset setting change notification dialog illustrated in
In step S1610, when the user inputs indication (judgment) whether information relating to a preset should be deleted from the preset setting change notification dialog illustrated in
If it is determined that the information should not be deleted (inhibited from being deleted) (NO in step S1610), the processing proceeds to step S1612. In step S1612, the uninstaller ends processing for the preset, and shifts the processing to processing for the subsequent preset. On the other hand, if it is determined that the information should be deleted (allowed to be deleted) (YES in step S1610), the processing proceeds to step S1611. In step S1611, the uninstaller deletes the information relating to the preset from the preset description file 811 illustrated in
A third exemplary embodiment of the present invention will be described below with reference to
In step S1802, the uninstaller first refers to a preset description file 811 illustrated in
On the other hand, if it is determined that there is a print setting item included in only a printer driver to be uninstalled (YES in step S1803), the processing proceeds to step S1804. In step S1804, the uninstaller performs control to perform processes in a loop (step S1805; corresponding to steps S1405 to S1410 illustrated in
After the processes in the loop are performed for all the presets other than “Standard” in step S1805, the processing proceeds to step S1807. In step S1807, the uninstaller determines whether there exists a preset having the same content as those of all presets updated this time as a result of performing a series of processes to step S1806 (second determination processing). If it is determined that there exists a preset having the same content (YES in step S1807), the processing proceeds to step S1808. In step S1808, the uninstaller displays a preset setting change notification dialog illustrated in
On the other hand, if it is determined that there exists no preset having the same content as those of all the presets currently updated as a result of performing the series of processes to step S1806 (NO in step S1807), the processing proceeds to step S1809. In step S1809, the uninstaller directly uninstalls the printer driver, and then the processing ends.
In step S1808, described above, the uninstaller may display an operation panel as illustrated in
In this case, when the user inputs indication (judgment) whether the information relating to the preset having the same content should be deleted from a preset setting change notification dialog illustrated in
On the other hand, if it is determined that the information is deleted (allowed to be deleted), the processing proceeds to step S1410. In step S1410, the uninstaller deletes the information relating to the preset, which is selected to be deleted in the preset setting change notification dialog illustrated in
In the above-mentioned description, the “in-loop processes” in step S1805 illustrated in
While the three exemplary embodiments have been described above, the present invention is not limited to the above-mentioned exemplary embodiments. The present invention can take on various other embodiments. As described above, according to the exemplary embodiments of the present invention, in a system in which an OS holds a print setting and a cross-sectional preset for printer drivers, after the printer driver is uninstalled, a preset storing a setting relating to the uninstalled printer driver can be prevented from remaining as a preset, which makes no sense practical for a user, in a system.
The configurations and the contents of various types of data are not limited to these. The present invention has various configurations and contents depending on the intended use. While one exemplary embodiment has been described, the present invention can take on an exemplary embodiment as a system, an apparatus, a method, a program, or a storage medium, for example. More specifically, the present invention may be applied to a system including a plurality of devices or an apparatus including one device.
The present invention is also implemented by performing the following processing, that is, processing for supplying software (a program) for implementing the function in the above-mentioned exemplary embodiment to a system or an apparatus via a network or various types of storage media and reading out and executing the program using a computer (or a CPU, a microprocessing unit (MPU), etc.) in the system or the apparatus.
The present invention may be applied to a system including a plurality of devices, or may be applied to an apparatus including one device. The present invention is not limited to the above-mentioned exemplary embodiments. Various modifications (including an organic combination of the exemplary embodiments) can be made based on the spirit of the present invention, and are not excluded from the scope of the present invention. More specifically, the present invention includes all configurations that are combinations of the above-mentioned exemplary embodiments and their modified examples.
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 modifications, equivalent structures, and functions.
This application claims priority from Japanese Patent Application No. 2010-054454 filed Mar. 11, 2010, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2010-054454 | Mar 2010 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
20070101345 | Takagi | May 2007 | A1 |
20080098303 | Murayama | Apr 2008 | A1 |
20080285082 | Morooka | Nov 2008 | A1 |
20100225946 | Fukasawa | Sep 2010 | A1 |
Number | Date | Country |
---|---|---|
2001-092642 | Apr 2001 | JP |
2004-287764 | Oct 2004 | JP |
Number | Date | Country | |
---|---|---|---|
20110222096 A1 | Sep 2011 | US |