background image

2 - 8

5X80 Series Software Development Kit (SDK) User’s Guide

Note: As with all other HHP structures, the dwStructSize member of the structure must be set before calling this function. (Set 

to sizeof (HHP_IMAGER_CAPS).)

Syntax

hhpReadImagerCapabilities

HHP_IMAGER_CAPS

 pImgrCaps 

)

Parameter

Description

pImgrCaps

Pointer to the HHP_IMAGER_CAPS structure.

hhpReadSymbologyConfig

Reads configuration items for a single symbology or for all symbologies.  Individual items to be read are specified by adding the 

appropriate mask bit (OR it) to the mask member of the structure to which it belongs.  Only items whose bits are set are read; all 

other items are ignored.

Syntax

hhpReadSymbologyConfig

SetupType_t

 cfgType,

int nSymbol,

PVOID

 pvSymStruct 

)

Parameter

Description

cfgType

Use SETUP_TYPE_CURRENT for the current settings, or SETUP_TYPE_DEFAULT for the  
customer default settings.

nSymbol     

One of the symbology enumerated types, e.g., SYM_CODE39, SYM_OCR, or SYM_ALL to read all 
symbologies.

pStruct     

Pointer to the appropriate structure based on nSymbol, e.g., CODE39_T, OCR_T, or 
HHP_SYM_CONFIG if all symbologies.

hhpReadSymbologyRangeMaxMin

Returns the specified symbology range maximum and minimum values.  If a symbology has no range values, the function returns 

-1 for the minimum and maximum values.

Syntax

hhpReadSymbologyRangeMaxMin

(

int  symbol,
PLONG  pnRangeMin,
PLONG  pnRangeMax 
)

Parameter

Description

int

The enumerated symbology types, eg., SYM_CODE39, SYM_PDF417, or SYM_ALL to read the 
max/min range for all symbologies.

pnRangeMin

A LONG pointer to hold the minimum range value for single symbologies, or a LONG array of size 
NUM_SYMBOLOGIES if SYM_ALL specified.  The min value will be -1 if the symbology does not 
support a minimum length value.

pnRangeMax

A LONG pointer to hold the maximum range value for single symbologies, or a LONG array of size 
NUM_SYMBOLOGIES if SYM_ALL specified.  The max value will be -1 if the symbology does not 
support a maximum length value.

Summary of Contents for 5080

Page 1: ...Software Development Kit SDK for 5080 5180 and 5380 Decoded Miniature Image Scan Engines User s Guide ...

Page 2: ...amages resulting from the furnishing performance or use of this material This document contains proprietary information which is protected by copyright All rights are reserved No part of this document may be photocopied reproduced or translated into another language without the prior written consent of Hand Held Products 2000 2007 Hand Held Products Inc All rights reserved Web Address www handheld...

Page 3: ...pEnableDisableSymbology 2 4 hhpEngineConnected 2 4 hhpGetAsyncResult 2 4 hhpGetErrorMessage 2 5 hhpGetLastImage 2 5 hhpNamedConnect 2 5 hhpRawAcquireIntelligentImage 2 6 hhpReadConfigItem 2 6 hhpReadConfigStream 2 7 hhpReadEngineInfo 2 7 hhpReadImagerCapabilities 2 7 hhpReadSymbologyConfig 2 8 hhpReadSymbologyRangeMaxMin 2 8 hhpSendActionCommand 2 9 hhpSendMessage 2 9 hhpSetAsyncMethods 2 10 hhpSe...

Page 4: ... 3 5 Sequence Mode 3 6 Serial Port Baud Rates 3 6 Baud Rates that Require USB Serial or SIO950 Compatible Serial Port Driver 3 6 Serial Data Bits 3 7 Parity 3 7 Stop Bits 3 7 Connection Types 3 7 Decoder Symbology Support 3 8 HHP Action Commands 3 8 On Off Enum 3 8 Beep Execute Enum 3 8 Imager Type Enum 3 8 Chapter 4 Structures and Mask Definitions Symbology Structures and Defines 4 1 Imaging Stru...

Page 5: ...ware Development Kit SDK User s Guide iii Chapter 6 Program Samples Configuration Management 6 1 Barcode Capture 6 2 Image Capture 6 5 Chapter 7 Customer Support Technical Assistance 7 1 Online Technical Assistance 7 1 ...

Page 6: ...iv 5X80 Series Software Development Kit SDK User s Guide ...

Page 7: ...d data or as one of the standard file formats BMP TIFF and JPG Captured images can then be saved to disk and easily imported into a variety of common tools and applications A single API is used for all Hand Held Products decoding engines The libraries for all engines are identical for a given host platform There are different libraries for each platform but the API interface is the same for all of...

Page 8: ...iate OS driver Handles low level communications protocols hhpImgrSdk dll Target Device Windows Folder Contains the exported SDK API Formats requests into imager commands then calls commDrv layer hhpImgrSdk lib Project Link Path Library exports file Allows your application to link without actually including the SDK code at link time hhpSymCfg h Project Include Path Definitions structures and enumer...

Page 9: ...on You should be aware that when the callback function method is used any processing done during the callback is run within the context of the SDK s asynchronous read thread This means that the SDK is unable to receive images or barcodes until the callback returns hhpCancelIo Cancels any synchronous or asynchronous I O in process 1 3 hhpGetAsyncResult Retrieves the results image barcode etc of an ...

Page 10: ...esult strings are returned in TCHAR arrays which if running on a WinCE device or if using a Unicode Desktop build are 2 bytes per character You can specify a Unicode code page other than the default ANSI code page CP_ACP hhpCaptureBarcode Initiates a synchronous wait for finish before returning from call or asynchronous return immediately barcode capture Decoded data returned is translated by code...

Page 11: ...mbined with an image window capture The image window is cut from the same image used to capture a barcode This is how the SDK provides the ability to capture a signature associated with a barcode In fact a successful barcode capture is required before the intelligent image window is sent by the imager You can specify whether the image is returned grayscale or black and white hhpAcquireIntelligentI...

Page 12: ...ECT_TYPE Enumerated type used in hhpConnect to specify the connection type and connection port where the imager is connected HHP_DATA_BITS Enumerated type for number of serial data bits HHP_DUTY_CYCLE Enumerated type to specify the behavior of the illumination and aimer LEDs during image capture HHP_EVENT_TYPE Enumerated type that describes the type of asynchronous event being reported HHP_FRAME_R...

Page 13: ...P_IMAGE Returns image data from the SDK It also specifies the format in which the image data is returned HHP_IMAGE_ACQUISITION Specifies how images are captured by the imager This includes gain exposure frame rates and illumination HHP_IMAGE_TRANSFER Specifies how images are shipped from the imager to the SDK This includes image processing items such as cropping subsampling histogram stretching an...

Page 14: ...1 8 5X80 Series Software Development Kit SDK User s Guide ...

Page 15: ... specified for each call if notification is desired pImgAcqu Optional pointer to an HHP_IMAGE_ACQUISITION structure This structure overrides just for this call the current imager configuration to specify and configure the image capture method type of autoexposure control or manual mode If this parameter is NULL the current imager configuration settings are used bWait If TRUE do not return until th...

Page 16: ...e imager to capture images and attempt to decode them Decoded data returned is translated by code page and locale Barcode capture can be synchronous or asynchronous Synchronous capture is specified by setting the bWait parameter hhpCaptureBarcode to TRUE In this case the function will not return until a barcode is read an error occurs or the decode timeout is reached Asynchronous capture is specif...

Page 17: ...will be passed to hhpGetAsyncMethods call instead The function returns immediately and you are notified when symbols are decoded an error occurs or decoding times out no barcode using the specified event notification method s dwTimeout Maximum time in milliseconds to attempt to decode before declaring a no decode A value of CURRENT_DECODE_TIMEOUT specifies that the timeout is whatever is currently...

Page 18: ...host going into a suspended state or if the imager has been removed Syntax hhpEngineConnected void hhpGetAsyncResult Retrieves the data from the last signal event image barcode capture This function can be called with pResultStruct set to NULL to obtain the event type This is useful when the notification method is a Windows event Syntax Result_t hhpGetAsyncResult hhpEventType_t pEventType PVOID pR...

Page 19: ...GE_TRANSFER pImgTrans BOOL bWait Parameter Description pImg Pointer to an HHP_IMAGE structure if bWait is TRUE If bWait is FALSE the parameter is ignored and should be NULL pImgTrans Optional pointer to an HHP_IMAGE_TRANSFER structure This structure overrides just for this call the current imager configuration and specifies the pixel subsample cropping rectangle transfer compression type compressi...

Page 20: ...E the parameter is ignored and should be NULL bWait If TRUE do not return until the image is received the decode timeout is reached or an error occurs If FALSE return immediately One of the event notification methods must be enabled to receive notification of completion see hhpSetAsyncMethods on page 2 10 hhpReadConfigItem Reads the configuration items for one or all of the configuration structure...

Page 21: ...he buffer contains all the configuration items in an ASCII stream so that it can be written to a disk for storage No interpretation is done on the data stream therefore the data stream contains both read only and read write data Syntax hhpReadConfigStream PBYTE puchCfgStream int nMaxLen PINT pnBytesReturned Parameter Description puchCfgStream Buffer to hold the raw imager configuration stream nMax...

Page 22: ...One of the symbology enumerated types e g SYM_CODE39 SYM_OCR or SYM_ALL to read all symbologies pStruct Pointer to the appropriate structure based on nSymbol e g CODE39_T OCR_T or HHP_SYM_CONFIG if all symbologies hhpReadSymbologyRangeMaxMin Returns the specified symbology range maximum and minimum values If a symbology has no range values the function returns 1 for the minimum and maximum values ...

Page 23: ...ws applications to send menu imager commands directly to the imager both wrapped and unwrapped and to receive the actual uninterpreted imager response This command allows a developer to send debug commands to the imager Syntax hhpSendMessage PBYTE puchMsg int nLen BOOL bSendRaw PBYTE puchReply int nLenToRead PINTpnRetLen Parameter Description puchMsg Command sent to the imager with or without comm...

Page 24: ...d on the given system Syntax hhpSetBarcodeDataCodePage DWORD dwCodePage Parameter Description dwCodePage Code page to use when converting from BYTE string to Unicode The only 2 code pages that are valid are CP_ACP and CP_OEMCP hhpSetConfigItemToDefaults Defaults a configuration group or individual group structure items Syntax hhpSetConfigItemToDefaults ConfigItems_t item Parameter Description item...

Page 25: ...hecks the file contents to verify that it is a firmware application file before the file is downloaded to the imager The firmware file is transferred to the imager compressed lossless unless the SDK has determined that the imager is running in bootstrap code instead of the current firmware application In this case the file is transferred uncompressed This function only supports synchronous operati...

Page 26: ... the enumerated type ConfigItems_t The valid values are BEEPER_CONFIG Writes the HHP_BEEPER structure settings specified by the dwMask value to the imager TRIGGER_CONFIG Writes the HHP_TRIGGER structure settings specified by the dwMask value to the imager DECODER_CONFIG Writes the HHP_DECODER_CONFIG structure settings specified by the dwMask value to the imager POWER_CONFIG Writes the HHP_POWER_SE...

Page 27: ... are set are written all other items are ignored Syntax hhpWriteSymbologyConfig int nSymId PVOID pvSymStruct Parameter Description nSymId One of the symbology enumerated types e g SYM_CODE39 SYM_OCR or SYM_ALL to write all symbologies pStruct Pointer to the appropriate structure based on nSymbol e g CODE39_T OCR_T or HHP_SYM_CONFIG if all symbologies Symbology Identifiers Note Please consult the a...

Page 28: ...25 X0 m 0x6D MaxiCode SYM_MAXICODE Um x 0x78 MicroPDF417 SYM_MICROPDF Lm R 0x52 MSI SYM_MSI Mm g 0x67 PDF417 SYM_PDF417 Lm r 0x72 Planet Code SYM_PLANET X0 L 0x4C Plessey Code SYM_PLESSEY P0 n 0x6E PosiCode SYM_POSICODE pm W 0x57 Postnet SYM_POSTNET X0 P 0x50 OCR US Money Font SYM_OCR o3 O 0x4F QR Code SYM_QR Qm s 0x73 Reduced Space Symbology SYM_RSS em y 0x79 Straight 2 of 5 Industrial SYM_STRT25...

Page 29: ...ly busy RESULT_ERR_FILE Error occurred during a file operation RESULT_ERR_FILEINCOMPATIBLE The selected file is incompatible with the imager RESULT_ERR_FILEINVALID The selected file is invalid or corrupt RESULT_ERR_INTERNAL_ERROR Generic internal failure RESULT_ERR_INVALID_COMM_PARAMS Invalid RS 232 parameters specified RESULT_ERR_MEMORY Out of memory memory allocation failed RESULT_ERR_MENUDECODE...

Page 30: ...ion NUM_SYMBOLOGIES Total number of supported symbologies All Decoders SYM_ALL 100 All active symbologies All Decoders SYM_AUSPOST Australian Post 2D Decoder only SYM_AZTEC 0 Aztec Code 2D Decoder only SYM_BPO British Post 2D Decoder only SYM_CANPOST Canadian Post 2D Decoder only SYM_CHINAPOST China Post All Decoders SYM_CODABAR Codabar All Decoders SYM_CODABLOCK Codablock 2D Decoder only SYM_CODE...

Page 31: ...RSS Reduced Space Symbology RSS All Decoders SYM_STRT25 Straight 2 of 5 Industrial All Decoders SYM_TELEPEN Telepen All Decoders SYM_TLCODE39 TCIF Linked Code 39 TLC39 All Decoders SYM_TRIOPTIC Trioptic Code All Decoders SYM_UPCA UPC A All Decoders SYM_UPCE0 UPC E All Decoders SYM_UPCE1 UPC E1 not truly standard All Decoders SYM_UPUIDTAG ID tag UPU 4 State 2D Decoder only Supported OCR Fonts These...

Page 32: ...ression Mode Formats COMPRESSION_NONE 0 No compression COMPRESSION_LOSSLESS Huffman lossless compression COMPRESSION_LOSSY JPEG lossy compression Capture Illumination Duty Cycle HHP_DUTY_CYCLE_OFF 0 Keep off during image capture HHP_DUTY_CYCLE_ON Turn on for image capture define HHP_CAPTURE_ALWAYS_OFF HHP_DUTY_CYCLE_OFF define HHP_CAPTURE_ALWAYS_ON HHP_DUTY_CYCLE_ON Auto Exposure Type HHP_AUTOEXPO...

Page 33: ...R_CONFIG 0 Read Write HHP_BEEPER items TRIGGER_CONFIG Read Write HHP_TRIGGER_CONFIG items DECODER_CONFIG Read Write HHP_DECODER_CONFIG items POWER_CONFIG Read Write HHP_POWER_SETTINGS items VERSION_INFO Read Write HHP_VERSION_INFO items SYMBOLOGY_CONFIG Read Write HHP_SYM_CONFIG items If specified in hhpReadConfigItem all the symbology config items for all the symbologies will be retrieved Use hhp...

Page 34: ...EQ_DISABLED 0 Sequence mode disabled HHP_SEQ_ENABLED Sequence mode enabled but not required HHP_SEQ_REQUIRED Sequence mode enabled and required Serial Port Baud Rates SERIAL_BAUD_300 300 300 BPS SERIAL_BAUD_600 600 600 BPS SERIAL_BAUD_1200 1200 1200 BPS SERIAL_BAUD_2400 2400 2400 BPS SERIAL_BAUD_4800 4800 4800 BPS SERIAL_BAUD_9600 9600 9600 BPS SERIAL_BAUD_19200 19200 19200 BPS SERIAL_BAUD_38400 3...

Page 35: ...RITY_SPACE S Space parity Stop Bits SERIAL_ONE_STOPBITS 1 1 stop bit SERIAL_TWO_STOPBITS 2 stop bits Connection Types Currently limited to serial ports HHP_COM1 0 COM1 HHP_COM2 COM2 HHP_COM3 COM3 HHP_COM4 COM4 HHP_COM5 COM5 HHP_COM6 COM6 HHP_COM7 COM7 HHP_COM8 COM8 HHP_COM9 COM9 HHP_COM10 COM10 HHP_COM11 COM11 HHP_COM12 COM12 HHP_COM13 COM13 HHP_COM14 COM14 HHP_COM15 COM15 HHP_COM16 COM16 HHP_COM1...

Page 36: ...080 Serial RS 232 4080 imager with internal decoder HHP_DECODED_IMAGER_4080_USB USB serial 4080 imager with internal decoder HHP_DECODED_IMAGER_5080VGA Serial RS 232 5080 VGA imager with internal decoder HHP_DECODED_IMAGER_5080VGA_USB USB serial 5080 VGA imager with internal decoder HHP_DECODED_IMAGER_5080VGA_PSOC Serial RS 232 5080 VGA imager with internal decoder and PSOC HHP_DECODED_IMAGER_5080...

Page 37: ... define SYMBOLOGY_ADDENDA_REQUIRED 0x00000200 Only allow codes with addenda UPC and EAN define SYMBOLOGY_ADDENDA_SEPARATOR 0x00000400 Include Addenda separator space in returned string define SYMBOLOGY_EXPANDED_UPCE 0x00000800 Extended UPC E define SYMBOLOGY_UPCE1_ENABLE 0x00001000 UPC E1 enable use SYMBOLOGY_ENABLE for UPC E0 define SYMBOLOGY_COMPOSITE_UPC 0x00002000 Enable UPC Composite codes de...

Page 38: ..._FLAGS 0x00000001 Flags are valid define SYM_MASK_MIN_LEN 0x00000002 Min Length valid define SYM_MASK_MAX_LEN 0x00000004 Max Length valid define SYM_MASK_OCR_MODE 0x00000008 OCR mode valid define SYM_MASK_DIRECTION 0x00000010 OCR direction valid define SYM_MASK_TEMPLATE 0x00000020 OCR template valid define SYM_MASK_GROUP_H 0x00000040 OCR group H valid define SYM_MASK_GROUP_G 0x00000080 OCR group H...

Page 39: ...UP_G_LEN 256 define MAX_CHECK_CHAR_LEN 64 typedef struct _tagSymCodeOCR DWORD dwStructSize Set to size of SymCodeOcr_t DWORD dwMask Item masks OCRMode_t ocrMode OCR Enable Mode structure OCRDirection_t ocrDirection OCR direction structure Not supported TCHAR tcTemplate MAX_TEMPLATE_LEN Template for decoded data d decimal a ASCII l letter e extended TCHAR tcGroupG MAX_GROUP_H_LEN Group G character ...

Page 40: ...lagsRange_t QR Code has max and min length values define RSS_T SymFlagsRange_t RSS Codes have max and min length values define UPCA_T SymFlagsOnly_t UPC A has flags only define UPCE_T SymFlagsOnly_t UPC E has flags only define ISBT_T SymFlagsOnly_t ISBT Code has flags only define BPO_T SymFlagsOnly_t British Post has flags only define CANPOST_T SymFlagsOnly_t Canadian Post has flags only define AU...

Page 41: ... UPCA_T upcA Enable check NumSysTrans Addenda2 Addenda5 AddendaReq Adden daSep UPCE_T upcE Enable Check NumSysTrans Addenda2 Addenda5 AddendaReq Adden daSep ExpandedE EnableE1 Postal Codes AUSPOST_T australiaPost Enable AustralianBar BPO_T britishPost Enable CANPOST_T canadaPost Enable DUTCHPOST_T dutchPost Enable JAPOST_T japanPost Enable KORPOST_T koreaPost Enable PLANET_T usPlanet Enable Check ...

Page 42: ...ms define WHITE_VALUE_MASK 0x00001 Target value 0 255 for the white pixel define WHITE_WINDOW_MASK 0x00002 Acceptable delta from target white define MAX_CAPTURE_RETRIES_MASK 0x00004 Max of frames to try to get white value define ILLUMINATION_DUTY_CYCLE_MASK 0x00008 How LEDs behave during image capture define LIGHTS_DUTY_CYCLE_MASK 0x00008 Duplicate of above mask define AIMER_DUTY_CYCLE_MASK 0x0001...

Page 43: ...00008 No Compression Lossless or Lossy define HISTOGRAM_STRETCH_MASK 0x00010 Range 0 255 define COMPRESSION_FACTOR_MASK 0x00020 If lossy compression image quality percent define EDGE_ENHANCEMENT_MASK 0x00100 Edge sharpening filter define GAMMA_CORRECTION_MASK 0x00200 Gamma correction define TEXT_ENHANCEMENT_MASK 0x00400 Text sharpening filter define INFINITY_FILTER_MASK 0x00800 Sharpening for imag...

Page 44: ...m is bytes so far lParam is bytes to send will be sent if this member mask speci fied and its value is a valid windows handle PDWORD pdwTransferPercent If non NULL and specified in MASK the percent complete of the transfer is placed here It is up to the caller to check the value in a thread or timer callback HHP_IMAGE_TRANSFER PHHP_IMAGE_TRANSFER Data structure for captured image hhpAcquireImage h...

Page 45: ...ms HHP_TRIG_MODES TriggerMode Trigger mode DWORD dwTriggerTimeout 0 9999 milliseconds HHP_TRIGGER PHHP_TRIGGER Engine information structure defines define MAX_SHORT_VERSION_LEN 32 define MAX_SERIAL_NUMBER_LEN 16 define MAX_CHECKSUM_LEN 8 define ENGINE_ID_DIGITS 4 Engine information structure typedef struct _tagHHP_ENGINE_INFO DWORD dwStructSize Structure size TCHAR tcEngId ENGINE_ID_DIGITS 4 digit...

Page 46: ...equence in order they are to be sent TCHAR tchSeqCmdBlk SIZE_OF_SEQUENCE_BLOCK HHP_SEQUENCE_MODE PHHP_SEQUENCE_MODE Decode method stucture masks define DCMASK_MAX_MESSAGE_LENGTH 0x00001 Maximum length of decoded string This item is Read Only define DCMASK_DECODE_MULTIPLE 0x00002 Look for and report all barcodes in captured frame define DCMASK_USE_AIMERS 0x00004 Use aimers when capturing barcodes d...

Page 47: ...e PWRMASK_LOW_POWER_TIMEOUT 0x00004 define PWRMASK_STOP_MODE_TIMEOUT 0x00004 define PWRMASK_ILLUM_LED_INTENSITY 0x00008 define PWRMASK_SYS_SPEED 0x00010 define PWRMASK_AIMER_MODE 0x00020 define PWRMASK_AIMER_DURATION 0x00040 define PWRMASK_AIMER_DELAY 0x00080 define PWRMASK_IMAGER_IDLE_TIMEOUT 0x00100 define PWRMASK_ RS232_LOW_POWER_TIMEOUT 0x00200 define PWRMASK_ SLEEP_MODE_TIMEOUT 0x00200 define...

Page 48: ...RSION_INFO Structure that includes all structures used to configure imager See ConfigItems_t when specifying structure to call hh pReadConfigItem and hhpWriteConfigItem typedef struct _tagHHP_CONFIG DWORD dwStructSize Size of HHP_CONFIG structure in bytes HHP_BEEPER beeperCfg Beeper configuration structure HHP_TRIGGER triggerCfg Trigger configuration structure HHP_DECODER_CONFIG decoderCfg Decoder...

Page 49: ...mager s decoder IMAGER_TYPE imagerType Decoded Out Serial Decoded Out USB Non Decoded Out HHP_IMAGER_CAPS PHHP_IMAGER_CAPS Imager Type decoded out or non decoded out typedef enum HHP_UNKNOWN_IMAGER Unable to determine engine type HHP_DECODED_IMAGER_4080 Serial RS 232 4080 imager with internal decoder HHP_DECODED_IMAGER_4080_USB USB serial 4080 imager with internal decoder HHP_NON_DECODED_IMAGER_40...

Page 50: ...4 14 5X80 Series Software Development Kit SDK User s Guide ...

Page 51: ...iver configuration that needs to be done to support the specified communication port settings Configuring the communications driver requires the current driver handle so you must also support SetCommDriverHandle The function is called by the SDK whenever you set change the communication port settings It is called after the SDK is finished processing pConfig so any changes you make will not be over...

Page 52: ... ImagerPoweredDown void Registry Entries There are two registry entries used to modify the SDK default behavior The values are both located in the registry key HKEY_LOCAL_MACHINE SOFTWARE Hand Held Products MatrixDemos Baud Rate The SDK will not normally allow high speed serial connections connections greater than 115200 baud unless it recognizes the driver name in the registry The first registry ...

Page 53: ..._T Setup Code39 Returned s n tcErrMsg Sample 2 Set the capture mode to photo image Note This changes the imager configuration for the items selected The imager uses these values if they are not overridden at the time of image capture transfer HHP_IMAGE_TRANSFER imgTrans Image transfer structure TCHAR tcErrMsg 128 Error message buffer Result_t nResult RESULT_ERR_INTIALIZE Return code Set the struct...

Page 54: ...s barcode capture using an event HHP_DECODE_MSG decodeInfo Returned decoded data message structure hhpEventType_t eventType HHP_BARCODE_EVENT Type of event that occurred TCHAR tcErrMsg 128 Error message buffer Result_t nResult RESULT_ERR_INTIALIZE Return code Verify the event is valid or you won t get any notification If hEvent NULL Register the event with the SDK if nResult hhpSetAsyncMethods hEv...

Page 55: ...etes if nResult hhpCaptureBarcode NULL 6000 FALSE RESULT_SUCCESS hhpGetErrorMessage nResult tcErrMsg _tprintf _T Capture Barcode Returned s n tcErrMsg Message Handler function LRESULT OnEventMsg WPARAM wParam LPARAM lParam hhpEventTye_t eventType hhpEventType_t wParam Event type DWORD dwBytes lParam Number of bytes in barcode You don t actually use it here HHP_DECODE_MSG decodeInfo Decode message ...

Page 56: ...ode s n decodeInfo pchMessage _tprintf _T Barcode Length d n decodeInfo nLength _tprintf _T AIM Id cn decodeInfo chCodeID _tprintf _T HHP Id cn decodeInfo chSymLetter _tprintf _T Symbol Modifier c n decodeInfo chSymModifier else hhpGetErrorMessage nResult tcErrMsg _tprintf _T Capture Barcode Returned s n tcErrMsg Code snippet to capture barcode TCHAR tcErrMsg 128 Error message buffer Result_tnResu...

Page 57: ...AGE_CAPTURE_MODE_MASK Set values ImgAcqu captureMode HHP_AUTOEXPOSURE_PHOTO ImgAcqu IlluminatCycle HHP_DUTY_CYCLE_ON Make sure to set imgTrans structure size imgTrans dwStructSize sizeof HHP_IMAGE_TRANSFER Set the subsample and compression masks ImgTrans dwMask SUBSAMPLE_VALUE_MASK COMPRESSION_MODE_MASK Set values imgTrans dwSubSample 1 imgTrans compressionMode COMPRESSION_LOSSLESS Set the HHP_IMA...

Page 58: ... well as having the SDK update a DWORD with the percentage of transfer completion For the latter it is important the DWORD not lose scope or be deleted before the asynchronous call completes You might have a thread or timer that looks at this value periodically before altering the user ImgTrans dwMask SUBSAMPLE_VALUE_MASK COMPRESSION_MODE_MASK COMPRESSION_FACTOR_MASK TRANSFER_UPDATE_HWND TRANSFER_...

Page 59: ...er Result_t nResult RESULT_ERR_INTIALIZE Return code Verify the event type is barcode if eventType HHP_IMAGE_EVENT Set the HHP_IMAGE structure size and allocate a buffer for the data set the buffer size and how we want to receive the data in the buffer Image dwStructSize sizeof HHP_IMAGE Image puchBuffer new BYTE 324000 Allocate a buffer big enough to hold 640x480x8 plus header if BMP Image nBuffe...

Page 60: ...6 8 5X80 Series Software Development Kit SDK User s Guide ...

Page 61: ... latechsupport handheld com Brazil Telephone 55 21 2178 0500 Fax 55 21 2178 0505 E mail brsuporte handheld com Mexico Telephone 704 998 3998 option 8 option 3 E mail latechsupport handheld com Europe Middle East and Africa Telephone 31 0 40 7999 393 Fax 31 0 40 2425 672 E mail eurosupport handheld com Asia Pacific Telephone Hong Kong 852 3188 3485 or 2511 3050 Telephone China 86 21 6361 3818 E mai...

Page 62: ...7 2 5X80 Series Software Development Kit SDK User s Guide ...

Page 63: ......

Page 64: ... Hand Held Products Inc 700 Visions Drive P O Box 208 Skaneateles Falls NY 13153 0208 5X10 80SDK UG Rev C 9 07 ...

Reviews: