Patent ID: 8001550

Claim:
An object identifier reader, comprising: a processor; a storage medium; an image buffer; a main task; and a data task; wherein the main task is executed by the processor to: read an object identifier to obtain data, the data comprising an image of the object identifier; store the data in the image buffer; signal the data task that the image of the object identifier is stored in the image buffer; and wait for the data task to signal that the image buffer is no longer needed; and wherein the data task is executed by the processor to: receive a signal from the main task indicating that the image of the object identifier is available; determine if the object identifier reader is connected to the host computing device; attempt to connect the object identifier reader to the host computing device if the object identifier reader is not connected to the host computing device; attempt to send the image of the object identifier to the host computing device if the object identifier reader is connected to the host computing device; store the image of the object identifier in the storage medium if the attempt to connect the object identifier reader to the host computing device is unsuccessful or if the attempt to send the image of the object identifier to the host computing device is unsuccessful; and signal the main task that the image buffer is no longer needed.