IMAGETEAM™ 4X00 Series Hardware Interface Layer Specification
1
Introduction and Overview
This document is an overview of the structure of the IT4X00 Series OEM imaging software provided by Hand Held Products.
Detailed information that describes the Hand Held Products OEM Application Programming Interface (
IMAGETEAM 4X00 SDK
User’s Guide) is provided as a part of that imaging software.
Design Overview
The Hand Held Products OEM imaging software supports a number of different Hand Held Products imaging engines while
exposing the user to a common programming interface for all imagers supported. This approach provides Hand Held Products
with a simple way of adding support for new imaging hardware, while allowing user software to remain largely unchanged. In
support of this design approach, the software components implemented in the Hand Held Products OEM imaging software have
been organized in the following layered format:
Of the four layers, Hand Held Products supplies the OEM API and Image Acquisition layers.
User Layer
The User Layer can be the application that is written by a developer or end user that accesses the imaging system by using the
OEM API functions. The User Layer can alternatively be an abstraction layer provided by an OEM that allows the OEM to
customize the level of API functionality exposed to their end user. Either option has access to all the applicable OEM API
functions that access and control the imaging subsystem
OEM API Layer
The OEM API Software is supplied by Hand Held Products and is the primary interface to the imaging system. All members of
the OEM Image Engine Family are supplied with a Software Developers Kit to facilitate command and control of the image
engines. For Windows CE
®
applications, the OEM API Software functionality is provided in the form of a Windows Dynamic
Link Library. For non-Windows CE applications, the form of the OEM API Software is to be determined. Full explanation of the
OEM API is provided in the
IMAGETEAM 4X00 SDK User’s Guide.
Image Acquisition Layer
The Image Acquisition Software layer is the software supplied by Hand Held Products that is responsible for imager auto
detection, initialization, state management, exposure control, and image acquisition. During application execution, this software
maintains the state and control of the imager, processes requests for images, and executes configuration and control requests.
For Windows CE applications, this layer is implemented in a stream device driver and is used by the OEM API layer. For non-
Windows CE applications, the form of this layer and its interface to the OEM API layer is to be determined.
Hardware Interface Layer
The Hardware Interface Software is the hardware-specific software provided by the system developer and used by the Image
Acquisition Software to access the physical imaging hardware and run hardware-specific tasks on the system. This software is
called upon by Image Acquisition Software to handle physical control of the hardware, such as communication with the imager,
timing functionality, low level interrupt service routine control, DMA initialization and control, system specific memory control, and
illumination functionality. For Windows CE applications, it is expected that this layer will be provided in the form of a Windows
Dynamic Link Library that will be loaded by the Imaging device driver. For non-Windows CE applications, the form of this layer
and its interface to the Image Acquisition Software is to be determined.
User Layer
OEM API Layer
Image Acquisition Layer
Hardware Interface Layer