Field of the Invention
The present invention relates to a communicating apparatus for performing wireless connection, a communication method, and a storage medium storing a program.
Description of the Related Art
In a wireless communication system, in addition to a method (for example, an infrastructure mode) of wirelessly connecting to a partner apparatus via an access point, there is known a peer-to-peer (P2P) wireless connection method in which a self apparatus or a partner apparatus serves as an access point, thereby directly, wirelessly connecting with the partner apparatus.
There is known, for example, Wi-Fi Direct® as a standard for implementing such P2P wireless connection method. A Wi-Fi Direct compatible apparatus can serve as an access point (group owner), thereby allowing direct wireless connection with a partner apparatus. At this time, whether the partner apparatus or the self apparatus serves as an access point is decided according to a sequence called Group Owner Negotiation (Japanese Patent Laid-Open No. 2011-249960).
When a given apparatus on a wireless communication system transmits a probe response command to a received probe request command, an apparatus which has transmitted the probe request command can discover the partner apparatus to be wirelessly connected (device search). After the device search, a sequence of, for example, confirming an IP address and device information indicating an apparatus type is executed, thereby establishing a wireless connection.
When transmitting a probe response command to a received probe request command, it is recommended that the probe response command is transmitted within a range defined by the standard of a wireless connection method by which the self apparatus operates. For example, if a probe request command has been transmitted by an extended Wi-Fi Direct compatible apparatus and the self apparatus serves as a non-extended Wi-Fi Direct compatible apparatus, a probe response command may be transmitted within a range defined by non-extended Wi-Fi Direct. This is because even if information (including various kinds of attributes) added to the probe request command includes uninterpretable information, it is possible to respond to the received probe request command based on only interpretable information. That is, although a corresponding wireless connection sequence or subsequent processing is different, the partner apparatus is discovered. If the subsequent sequence is executed in this state, wireless connection may fail due to a parameter acquisition error or the like, or processing after wireless connection may fail.
An aspect of the present invention is to eliminate the above-mentioned problems with the conventional technology. The present invention provides a communicating apparatus capable of appropriately processing a request command which requires a response, a communication method, and a program.
The present invention in one aspect provide a communicating apparatus comprising a reception unit configured to receive a request command which requires a response; a determination unit configured to determine based on the request command received by the reception unit whether a communication mode of a partner apparatus matches a communication mode executed by the communicating apparatus; and a response control unit configured to control, if the determination unit determines that the communication mode of the partner apparatus matches the communication mode executed by the communicating apparatus, to transmit a response command to the request command, and if the determination unit determines that the communication mode of the partner apparatus does not match the communication mode executed by the communicating apparatus, not to transmit a response command even though it is possible to respond to the request command.
According to the present invention, it is possible to appropriately process a request command which requires a response.
Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
Preferred embodiments of the present invention will now be described hereinafter in detail, with reference to the accompanying drawings. It is to be understood that the following embodiments are not intended to limit the claims of the present invention, and that not all of the combinations of the aspects that are described according to the following embodiments are necessarily required with respect to the means to solve the problems according to the present invention. Note that the same reference numerals denote the same components and a description thereof will be omitted.
A WLAN unit 202 is a unit used to perform communication by WLAN. Assume that the WLAN unit 202 can perform data (packet) communication in a WLAN system complying with, for example, IEEE802.11 series. Examples of wireless communication using the WLAN unit 202 include communication based on Wi-Fi Direct (WFD), and communication using a communication mode such as a software AP mode, ad hoc mode, and infrastructure mode. A display unit 203 is a display having an LCD display mechanism. An operation unit 204 includes a touch-panel operation mechanism, and detects an operation by the user. As a representative operation method, the display unit 203 displays button icons and a software keyboard, and when the user touches them, operation events are detected. A power key 205 is a hard key used to turn on/off the power.
Referring to
In the main board 501, a CPU 502 is a system control unit, and controls the overall mobile communication terminal apparatus 200. The following processing by the mobile communication terminal apparatus 200 is executed under the control of the CPU 502. A ROM 503 stores control programs to be executed by the CPU 502, an embedded operating system (OS) program, and the like. In this embodiment, the respective control programs stored in the ROM 503 execute software control such as scheduling and task switching under the management of the embedded OS stored in the ROM 503.
A RAM 504 is implemented by an SRAM (Static RAM) or the like, stores data such as program control variables, also stores data such as setting values registered by the user and management data of the mobile communication terminal apparatus 200, and is allocated with various work buffer areas.
An image memory 505 is implemented by a memory such as a DRAM (Dynamic RAM), and temporarily stores image data received via a communication unit and those read out from a data storage unit 512 so as to be processed by the CPU 502. Note that the communication unit is a general term for communication functions including the WLAN unit 517, NFC unit 518, and BT unit 521.
A nonvolatile memory 522 is implemented by a memory such as a flash memory, and stores data to be saved even after power-off. Note that the memory structure is not limited to this. For example, the image memory 505 and the RAM 504 may share a memory, or data may be backed up in the data storage unit 512. In this embodiment, a DRAM is used as the image memory 505. However, the present invention is not limited to this since another storage medium such as a hard disk or a nonvolatile memory may be used.
A data conversion unit 506 executes analysis of data of various formats, and data conversion such as color conversion and image conversion. A telephone unit 507 controls a telephone line, and implements telephone communication by processing audio data input/output via a loudspeaker unit 513. An operation unit 508 controls signals of the operation unit 204 (
A camera unit 511 has a function of electronically recording and encoding an image input via a lens. An image captured by the camera unit 511 is saved in the data storage unit 512. The loudspeaker unit 513 realizes a function of inputting or outputting a speech for a telephone function, and also an alarm notification function and the like. A power supply unit 514 is implemented by a portable battery, and controls power supply to the apparatus. A power supply state includes a battery dead state in which the battery has no remaining amount, a power-off state in which the power key 205 is not pressed, an active state in which the apparatus is normally active, and a power saving state in which the apparatus is active but is set in a power saving mode.
The mobile communication terminal apparatus 200 incorporates three communication units used to perform wireless communication, and can perform wireless communication by WLAN, NFC, and Bluetooth®. Thus, the mobile communication terminal apparatus 200 performs data communication with another device such as an MFP. Each communication unit converts data into packets, and transmits the packets to the other device. Conversely, each communication unit converts packets coming from another external device into original data, and transmits the data to the CPU 502. The WLAN unit 517, NFC unit 518, and BT unit 521 are connected to the main board 501 via bus cables 515, 516, and 520, respectively. The WLAN unit 517, NFC unit 518, and BT unit 521 are units each used to attain communication complying with its standard.
The respective components (the ROM 503 to the power supply unit 514, WLAN unit 517, NFC unit 518, BT unit 521, and nonvolatile memory 522) of the main board 501 are connected to each other via a system bus 519 managed by the CPU 502.
In the main board 601, a CPU 602 is a system control unit, and controls the overall MFP 300. The following processing by the MFP 300 is executed under the control of the CPU 602. A ROM 603 stores control programs to be executed by the CPU 602, an embedded operating system (OS) program, and the like. In this embodiment, the respective control programs stored in the ROM 603 perform software control such as scheduling and task switching under the management of the embedded OS stored in the ROM 603. A RAM 604 is implemented by an SRAM (Static RAM) or the like, stores data such as program control variables, also stores data such as setting values registered by the user and management data of the MFP 300, and is allocated with various work buffer areas.
A nonvolatile memory 605 is implemented by a memory such as a flash memory, and stores data to be saved even after power-off. An image memory 606 is implemented by a memory such as a DRAM (Dynamic RAM), and stores image data received via a communication unit, those processed by an encoding/decoding processing unit 612, and those acquired via a memory card controller 516. Also, the memory structure is not limited to this, similarly to the memory structure of the mobile communication terminal apparatus 200. A data conversion unit 607 executes analysis of data of various formats, conversion from image data into print data, and the like. Note that the communication unit is a general term for communication functions including the WLAN unit 617, NFC unit 618, and BT unit 619.
A read control unit 608 controls a reading unit 610 (for example, a CIS image sensor (contact type image sensor)) to optically read an image on a document. Next, an image signal obtained by converting the read image into electrical image data is output. At this time, various kinds of image processing such as binarization processing and halftone processing may be performed for the image signal, thereby outputting the resultant data.
An operation unit 609 and a display unit 611 correspond to the operation display unit 305 shown in
The print control unit 616 performs various kinds of image processing such as smoothing processing, printing density correction processing, and color correction for image data to be printed, and outputs the resultant data to a printing unit 615. The printing unit 615 can adopt an inkjet printer which prints an image by discharging, from a printhead, ink supplied from an ink tank. The print control unit 616 also serves to periodically read out information of the printing unit 615, and update information in the RAM 604. More specifically, the print control unit 616 updates status information such as the remaining amount of an ink tank and a printhead state.
The MFP 300 also incorporates three communication units used to perform wireless communication, similarly to the mobile communication terminal apparatus 200, and a description of these communication units will be omitted since their functions are the same. The WLAN unit 617, NFC unit 618, and BT unit 619 are connected to the main board 601 via bus cables 620, 621, and 622, respectively. The respective components (the CPU 602 to the BT unit 619) of the main board 601 are connected to each other via a system bus 626 managed by the CPU 602.
[Peer-to-Peer Wireless Connection (P2P Wireless Connection)]
The mobile communication terminal apparatus 200 and the MFP 300 can establish a peer-to-peer (P2P) wireless connection complying with WFD. WFD is a standard stipulated by Wi-Fi Alliance, and described in “Wi-Fi Peer-to-Peer (P2P) Technical Specification Version 1.1”. The mobile communication terminal apparatus 200 and MFP 300 which are WFD compatible apparatuses have a software access point (soft AP) function serving as an access point. This allows the mobile communication terminal apparatus 200 and the MFP 300 to directly, wirelessly connect with each other by WFD without intervention of another access point. Among a plurality of WFD compatible apparatuses, an apparatus to serve as a soft AP is decided according to a sequence called Group Owner Negotiation. An apparatus which is a WFD compatible apparatus and serves as an access point will be particularly referred to as a group owner hereinafter.
When a probe response command (Probe Response frame) is transmitted in response to a probe request command (Probe Request frame) sent by one apparatus on a wireless communication system, the apparatus which has sent the probe request command can discover a partner apparatus to be wirelessly connected (device search (Discovery)). After that, a sequence of, for example, confirming an IP address and device information indicating an apparatus type is executed, thereby establishing a wireless connection. Especially for P2P wireless connection, the probe request command contains information (P2P elements) about P2P wireless connection.
Three types of operation modes are defined for wireless communication of the MFP 300 according to this embodiment. The first type is a mode (soft AP mode) in which, unlike P2P wireless connection, the self apparatus simulates the operation of an access point by software settings and wirelessly connects to a partner apparatus. The second type is a mode (WFD mode) in which the self apparatus is a WFD compatible apparatus and serves as a group owner. The third type is a mode (WFD extended mode) in which the self apparatus is an extended WFD compatible apparatus and serves as a group owner. Extended WFD indicates a mode in which an extended function at a service level is added to WFD. For example, a probe request command complying with extended WFD contains attribute information (information elements and WFD extended attributes) for defining the specific specifications. The information elements are added to the probe request command complying with WFD in the form of arguments. The WFD mode indicates a mode in which the self apparatus serves as a non-extended WFD apparatus. The mode of the MFP 300 may be designated by the user through the operation unit 609 or the like, or may be fixed.
When transmitting a probe response command to a received probe request command, it is recommended that the probe response command is transmitted within a range defined by the standard of a wireless connection method by which the self apparatus operates. For example, if a probe request command has been transmitted by a WFD compatible apparatus (WFD mode) and the self apparatus is an extended WFD compatible apparatus (WFD extended mode), a probe response command may be transmitted within a range defined by extended WFD even though the self apparatus does not operate in the WFD mode. This is because even if information (including various kinds of attributes) added to the probe request command includes uninterpretable information, it is possible to respond to the received probe request command based on only interpretable information. That is, although a corresponding wireless connection sequence or subsequent processing is different, the partner apparatus is discovered. If, however, the subsequent sequence is executed in this state, wireless connection may fail due to a parameter acquisition error or the like, or processing after wireless connection may fail.
[Device Search Sequence in Each Operation Mode]
A device search sequence in each operation mode will now be described.
In the WFD mode/WFD extended mode, after transmitting/receiving the device search response command, a device information confirmation phase 1003 is executed. In the device information confirmation phase 1003, each of the apparatuses confirms device information of a partner apparatus. The device information confirmation phase 1003 corresponds to, for example, P2P Provision Discovery. Note that the device information indicates, for example, a device category or type such as a printer or scanner. Note also that execution of the device information confirmation phase 1003 is essential in the WFD extended mode. However, in the WFD mode, the device information confirmation phase 1003 is an optional function, and thus may not be executed.
Next, a role decision phase 1004 is executed. In the role decision phase 1004, one of the mobile communication terminal apparatus 200 and the MFP 300 is determined as a group owner. As the decision method, the Group Owner Negotiation sequence in WFD is determined, and a group owner is decided using parameters 0 to 15 representing the degree of desirability of being a group owner.
After that, a parameter sharing phase 1007 is executed. In the parameter sharing phase 1007, the apparatuses share various parameters indicating a push button method, PIN code method, and the like. The parameter sharing phase 1007 corresponds to, for example, Wi-Fi Protected Setup. After the execution of the parameter sharing phase 1007, a wireless connection is established at an application level in a wireless connection phase 1008.
[Problem due to Mixing of Operation Modes]
Upon receiving the device search response command, the mobile communication terminal apparatus 200 recognizes that it has discovered the partner apparatus. The mobile communication terminal apparatus 200 then starts to execute a subsequent parameter exchange phase 1103, wireless connection phase 1104, and application use phase 1105. The parameter exchange phase 1103 corresponds to the parameter sharing phase 1007 of
Since, however, the operation mode of the mobile communication terminal apparatus 200 is different from that of the MFP 300, details of the sequence, for example, parameter exchange and wireless connection of the sequence are different from expected ones. That is, even if the apparatus starts execution of the parameter exchange phase 1103, the phase may fail due to a failure of parameter exchange. Also, even if the apparatus starts execution of the wireless connection phase 1104, the phase may fail due to a failure of wireless connection establishment. Even if a wireless connection can be established, and then apparatus starts execution of the application use phase 1105, an expected result may not be obtained, or the phase may fail since an application expected by the user cannot be used. In such case, for example, the mobile communication terminal apparatus 200 needs to change the operation mode of the self apparatus, and repeat the sequence from the operation of transmitting the device search request command 1101.
Upon receiving the device search response command, the mobile communication terminal apparatus 200 recognizes that it has discovered the partner apparatus. The mobile communication terminal apparatus 200 then starts to execute a subsequent role decision phase 1203, parameter exchange phase 1204, wireless connection phase 1205, and application use phase 1206.
However, the operation mode of the mobile communication terminal apparatus 200 is different from that of the MFP 300. Therefore, for example, even if the apparatus starts execution of the application use phase 1206, an application expected by the user cannot be used and thus the phase may fail, or an expected result may not be obtained. For example, since it is impossible to access a desired service or activation of an application is not executed, the user may not be able to use an expected application. In such case, for example, the mobile communication terminal apparatus 200 needs to change the operation mode of the self apparatus, and repeat the sequence from the operation of transmitting the device search request command 1201.
Upon receiving the device search response command, the mobile communication terminal apparatus 200 recognizes that it has discovered the partner apparatus. The mobile communication terminal apparatus 200 then starts to execute a next device supply information confirmation phase 1303.
However, the operation mode of the mobile communication terminal apparatus 200 is different from that of the MFP 300. Therefore, for example, even if the apparatus starts execution of the device supply information confirmation phase 1303, the phase may fail due to a failure of device information confirmation, or an expected result may not be obtained.
In this embodiment, the MFP 300 determines based on the operation mode of the self apparatus whether to transmit a device search response command to a device search request command received from a partner apparatus. If it is determined that a device search response command is to be transmitted, the MFP 300 transmits a device search response command. On the other hand, if it is determined that no device search response command is to be transmitted, the MFP 300 transmits no device search response command. With this arrangement, from the viewpoint of the mobile communication terminal apparatus 200, the operation mode of the received device search response command matches that of the mobile communication terminal apparatus 200. Therefore, the mobile communication terminal apparatus 200 can execute the subsequent connection sequence without any error described with reference to
A case in which the MFP 300 operates in the WFD extended mode will be described first.
In step S1401, the MFP 300 receives a device search request command from the mobile communication terminal apparatus 200. In step S1402, the MFP 300 refers to the received device search request command, and determines whether the command contains extended WFD attribute information. If it is determined that extended WFD attribute information is contained, the process advances to step S1403. In step S1403, the MFP 300 extracts, from the device search request command, the identification ID of the transmission source of the command, that is, the identification ID of the mobile communication terminal apparatus 200, which is attribute information independent of the operation mode, and stores the extracted identification ID in the RAM 604 or the like. Note that the identification ID need only be data for uniquely specifying an apparatus, and may be, for example, a MAC address. In step S1404, the MFP 300 transmits a device search response command containing extended WFD attribute information to the mobile communication terminal apparatus 200. The device search response command returned in step S1404 corresponds to the device search response command 902 of
If it is determined in step S1402 that no extended WFD attribute information is contained, the process advances to step S1405. In step S1405, the MFP 300 extracts, from the received device search request command, the identification ID of the transmission source of the command, that is, the identification ID of the mobile communication terminal apparatus 200, which is attribute information independent of the operation mode, and determines whether the extracted identification ID matches an identification ID already stored in the RAM 604 or the like.
As described with reference to
In this embodiment, if it is determined in step S1402 that no extended WFD attribute information is contained but it is determined in step S1405 that the identification ID of the transmission source of the command matches the identification ID already stored in the RAM 604, the received device search request command is determined as the device search request command 1005 of
If it is determined in step S1405 that the identification IDs match each other, in step S1406 the MFP 300 transmits a device search response command to the mobile communication terminal apparatus 200. At this time, the MFP 300 transmits the device search response command without attribute information. On the other hand, if it is determined in step S1405 that the identification IDs do not match each other, the MFP 300 determines that the received device search request command is a command corresponding to an operation mode different from that of the self apparatus, and discards the received device search request command. After the processing in step S1404, S1406, or S1407, the MFP 300 stands by for a device search request command again. When the MFP 300 receives a device search request command, it repeats the process from step S1401.
If it is determined in step S1502 that no extended WFD attribute information is contained, in step S1504 the MFP 300 refers to the received device search request command, and determines whether the command contains WFD attribute information. If it is determined that WFD attribute information is contained, in step S1505 the MFP 300 extracts, from the device search request command, the identification ID of the transmission source of the command, that is, the identification ID of the mobile communication terminal apparatus 200, which is attribute information independent of the operation mode, and stores the extracted identification ID in the RAM 604 or the like. Note that the identification ID need only be data for uniquely specifying an apparatus, and may be, for example, a MAC address. In step S1506, the MFP 300 transmits a device search response command containing WFD attribute information to the mobile communication terminal apparatus 200. The device search response command transmitted in step S1506 corresponds to the device search response command 802 of
If it is determined in step S1504 that no WFD attribute information is contained, the process advances to step S1507. In step S1507, the MFP 300 extracts, from the received device search request command, the identification ID of the transmission source of the command, that is, the identification ID of the mobile communication terminal apparatus 200, which is attribute information independent of the operation mode, and determines whether the extracted identification ID matches an identification ID already stored in the RAM 604 or the like.
If it is determined in step S1507 that the identification ID of the transmission source of the command matches the identification ID already stored in the RAM 604, the received command is determined as the device search request command 1005 of
If it is determined in step S1507 that the identification IDs do not match each other, the MFP 300 determines that the received device search request command is a command corresponding to an operation mode different from that of the self apparatus, and discards the received device search request command. After the processing in step S1503, S1506, S1508, or S1509, the MFP 300 stands by for a device search request command again. When the MFP 300 receives a device search request command, it repeats the process from step S1501.
In step S1601, the MFP 300 receives a device search request command from the mobile communication terminal apparatus 200. In step S1602, the MFP 300 refers to the received device search request command, and determines whether the command contains WFD attribute information or extended WFD attribute information. If it is determined that one of the pieces of attribute information is contained, it means that an operation mode corresponding to the received command is different from that of the self apparatus. Thus, in step S1603, the MFP 300 discards the received device search request command.
If it is determined in step S1602 that none of the pieces of attribute information are contained, the MFP 300 determines in step S1604 that an operation mode corresponding to the received device search request command is the soft AP mode. The MFP 300 transmits a device search response command to the mobile communication terminal apparatus 200.
[Processing on Mobile Communication Terminal Apparatus Side]
Processing in which the MFP 300 transmits a device search response command to only a device search request command corresponding to an operation mode matching the operation mode of the self apparatus has been described with reference to
In step S1701, the mobile communication terminal apparatus 200 transmits a device search request command to the MFP 300. In step S1702, the mobile communication terminal apparatus 200 receives a device search response command from a partner apparatus. In step S1703, the mobile communication terminal apparatus 200 refers to the received device search response command, and determines whether the command contains extended WFD attribute information. If it is determined that extended WFD attribute information is contained, the process advances to step S1704. In step S1704, the mobile communication terminal apparatus 200 determines whether the self apparatus operates in the WFD extended mode. If it is determined that the self apparatus operates in the WFD extended mode, in step S1705 the mobile communication terminal apparatus 200 extracts the identification ID of the partner apparatus from the received device search response command, and adds it to a connection destination device list stored in advance in the RAM 504 or the like. On the other hand, if it is determined in step S1704 that the self apparatus does not operate in the WFD extended mode, or after the processing in step S1705 is performed, the process advances to step S1706.
If it is determined in step S1703 that no extended WFD attribute information is contained, the mobile communication terminal apparatus 200 determines in step S1708 whether the device search response command contains WFD attribute information. If it is determined that WFD attribute information is contained, the mobile communication terminal apparatus 200 determines in step S1709 whether the self apparatus operates in the WFD mode. If it is determined that the self apparatus operates in the WFD mode, the apparatus 200 extracts the identification ID of the partner apparatus from the received device search response command, and adds it to the connection destination device list. If it is determined in step S1709 that the self apparatus does not operate in the WFD mode or after the processing in step S1710 is performed, the process advances to step S1706.
If it is determined in step S1708 that no WFD attribute information is contained, the mobile communication terminal apparatus 200 determines in step S1711 whether the self apparatus operates in the infrastructure mode. If it is determined that the self apparatus operates in the infrastructure mode, the mobile communication terminal apparatus 200 extracts the identification ID of the partner apparatus from the received device search response command, and adds it to the connection destination device list. If it is determined in step S1711 that the self apparatus does not operate in the infrastructure mode, the process advances to step S1706.
In step S1706, the mobile communication terminal apparatus 200 determines whether the device search is to be terminated. If, for example, there are a plurality of partner apparatuses to which the device search request command has been transmitted, and it is determined that the processing in
In this embodiment, the mobile communication terminal apparatus 200 presents only apparatuses, whose operation mode matches that of the self apparatus, as a search result to the user. However, the mobile communication terminal apparatus 200 may change the operation mode of the self apparatus to match the operation mode of a discovered partner apparatus.
In
In above case, an operation mode determined by the device search response command may be stored for each ID of the device instead of the device search response command.
As described above, according to this embodiment, the MFP 300 transmits a device search response command to only a device search request command corresponding to the operation mode of the self apparatus. With this arrangement, since the operation mode of the partner apparatus which has been discovered by receiving the device search response command always matches that of the self apparatus, it is possible to execute the subsequent sequence for establishing a wireless connection without any error.
According to this embodiment, the mobile communication terminal apparatus 200 can present, as a search result to the user, only apparatuses for which an operation mode corresponding to a received device search response command matches that of the self apparatus. If the operation modes are different from each other, the mobile communication terminal apparatus 200 can change the operation mode of the self apparatus to match the operation mode of the partner apparatus. As a result, the subsequent processing can be executed without any error.
Note that although a case in which wireless communication is performed has been exemplified in the above embodiment, the same processing can be performed for communication by a wired network.
Embodiments of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions recorded on a storage medium (e.g., non-transitory computer-readable storage medium) to perform the functions of one or more of the above-described embodiment(s) of the present invention, 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). The computer may comprise one or more of a central processing unit (CPU), micro processing unit (MPU), or other circuitry, and may include a network of separate computers or separate computer processors. 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.
A program may be executed by a single computer or a plurality of computers in cooperation. Further, hardware such as a circuit for executing part of the program may be arranged, and the processing described in the embodiment may be executed by cooperation between the hardware and the computer which executes the software.
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.
This application claims the benefit of Japanese Patent Application No. 2013-094642, filed Apr. 26, 2013, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2013-094642 | Apr 2013 | JP | national |
Number | Date | Country | |
---|---|---|---|
Parent | 14257178 | Apr 2014 | US |
Child | 15237924 | US |