1*b6ec842dSStephan Aßmus /* 2*b6ec842dSStephan Aßmus * Copyright 2004-2010, Haiku Inc. All Rights Reserved. 3*b6ec842dSStephan Aßmus * Distributed under the terms of the MIT License. 4*b6ec842dSStephan Aßmus */ 5*b6ec842dSStephan Aßmus #ifndef _USB_HID_PAGE_BAR_CODE_SCANNER_H 6*b6ec842dSStephan Aßmus #define _USB_HID_PAGE_BAR_CODE_SCANNER_H 7*b6ec842dSStephan Aßmus 8*b6ec842dSStephan Aßmus 9*b6ec842dSStephan Aßmus /* Reference: 10*b6ec842dSStephan Aßmus * HID Usage Page 0x8C: BAR CODE SCANNER 11*b6ec842dSStephan Aßmus * HID Point of Sale Usage Tables Ver. 1.0 12*b6ec842dSStephan Aßmus * http://www.usb.org/developers/devclass_docs/pos1_02.pdf 13*b6ec842dSStephan Aßmus */ 14*b6ec842dSStephan Aßmus 15*b6ec842dSStephan Aßmus // Usage IDs 16*b6ec842dSStephan Aßmus enum { 17*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_CODE_BADGE_READER = 0x01, 18*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_CODE_SCANNER, 19*b6ec842dSStephan Aßmus B_HID_UID_BCS_DUMB_BAR_CODE_SCANNER, 20*b6ec842dSStephan Aßmus B_HID_UID_BCS_CORDLESS_SCANNER_BASE, 21*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_CODE_SCANNER_CRADLE, 22*b6ec842dSStephan Aßmus 23*b6ec842dSStephan Aßmus B_HID_UID_BCS_ATTRIBUTE_REPORT = 0x10, 24*b6ec842dSStephan Aßmus B_HID_UID_BCS_SETTINGS_REPORT, 25*b6ec842dSStephan Aßmus B_HID_UID_BCS_SCANNED_DATA_REPORT, 26*b6ec842dSStephan Aßmus B_HID_UID_BCS_RAW_SCANNED_DATA_REPORT, 27*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_REPORT, 28*b6ec842dSStephan Aßmus B_HID_UID_BCS_STATUS_REPORT, 29*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_EAN_CONTROL_REPORT, 30*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_2_3_LABEL_CONTROL_REPORT, 31*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_39_CONTROL_REPORT, 32*b6ec842dSStephan Aßmus B_HID_UID_BCS_INTERLEAVED_2_OF_5_CONTROL_REPORT, 33*b6ec842dSStephan Aßmus B_HID_UID_BCS_STANDARD_2_OF_5_CONTROL_REPORT, 34*b6ec842dSStephan Aßmus B_HID_UID_BCS_MSI_PLESSEY_CONTROL_REPORT, 35*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODABAR_CONTROL_REPORT, 36*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_128_CONTROL_REPORT, 37*b6ec842dSStephan Aßmus B_HID_UID_BCS_MISC_1D_CONTROL_REPORT, 38*b6ec842dSStephan Aßmus B_HID_UID_BCS_2D_CONTROL_REPORT, 39*b6ec842dSStephan Aßmus 40*b6ec842dSStephan Aßmus B_HID_UID_BCS_AIMING_POINTER_MODE = 0x30, 41*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_CODE_PRESENT_SENSOR, 42*b6ec842dSStephan Aßmus B_HID_UID_BCS_CLASS_1A_LASER, 43*b6ec842dSStephan Aßmus B_HID_UID_BCS_CLASS_2_LASER, 44*b6ec842dSStephan Aßmus B_HID_UID_BCS_HEATER_PRESENT, 45*b6ec842dSStephan Aßmus B_HID_UID_BCS_CONTACT_SCANNER, 46*b6ec842dSStephan Aßmus B_HID_UID_BCS_ELECTRONIC_ARTICLE_SURVEILLANCE_NOTIFICATION, 47*b6ec842dSStephan Aßmus B_HID_UID_BCS_CONSTANT_ELECTRONIC_ARTICLE_SURVEILLANCE, 48*b6ec842dSStephan Aßmus B_HID_UID_BCS_ERROR_INDICATION, 49*b6ec842dSStephan Aßmus B_HID_UID_BCS_FIXED_BEEPER, 50*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_DECODE_INDICATION, 51*b6ec842dSStephan Aßmus B_HID_UID_BCS_HANDS_FREE_SCANNING, 52*b6ec842dSStephan Aßmus B_HID_UID_BCS_INTRINSICALLY_SAFE, 53*b6ec842dSStephan Aßmus B_HID_UID_BCS_KLASSE_EINS_LASER, 54*b6ec842dSStephan Aßmus B_HID_UID_BCS_LONG_RANGE_SCANNER, 55*b6ec842dSStephan Aßmus B_HID_UID_BCS_MIRROR_SPEED_CONTROL, 56*b6ec842dSStephan Aßmus B_HID_UID_BCS_NOT_ON_FILE_INDICATION, 57*b6ec842dSStephan Aßmus B_HID_UID_BCS_PROGRAMMABLE_BEEPER, 58*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGERLESS, 59*b6ec842dSStephan Aßmus B_HID_UID_BCS_WAND, 60*b6ec842dSStephan Aßmus B_HID_UID_BCS_WATER_RESISTANT, 61*b6ec842dSStephan Aßmus B_HID_UID_BCS_MULTI_RANGE_SCANNER, 62*b6ec842dSStephan Aßmus B_HID_UID_BCS_PROXIMITY_SENSOR, 63*b6ec842dSStephan Aßmus 64*b6ec842dSStephan Aßmus B_HID_UID_BCS_FRAGMENT_DECODING = 0x4d, 65*b6ec842dSStephan Aßmus B_HID_UID_BCS_SCANNER_READ_CONFIDENCE, 66*b6ec842dSStephan Aßmus B_HID_UID_BCS_DATA_PREFIX, 67*b6ec842dSStephan Aßmus B_HID_UID_BCS_PREFIX_AIMI, 68*b6ec842dSStephan Aßmus B_HID_UID_BCS_PREFIX_NONE, 69*b6ec842dSStephan Aßmus B_HID_UID_BCS_PREFIX_PROPRIETARY, 70*b6ec842dSStephan Aßmus 71*b6ec842dSStephan Aßmus B_HID_UID_BCS_ACTIVE_TIME = 0x55, 72*b6ec842dSStephan Aßmus B_HID_UID_BCS_AIMING_LASER_PATTERN, 73*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_CODE_PRESENT, 74*b6ec842dSStephan Aßmus B_HID_UID_BCS_BEEPER_STATE, 75*b6ec842dSStephan Aßmus B_HID_UID_BCS_LASER_ON_TIME, 76*b6ec842dSStephan Aßmus B_HID_UID_BCS_LASER_STATE, 77*b6ec842dSStephan Aßmus B_HID_UID_BCS_LOCKOUT_TIME, 78*b6ec842dSStephan Aßmus B_HID_UID_BCS_MOTOR_STATE, 79*b6ec842dSStephan Aßmus B_HID_UID_BCS_MOTOR_TIMEOUT, 80*b6ec842dSStephan Aßmus B_HID_UID_BCS_POWER_ON_RESET_SCANNER, 81*b6ec842dSStephan Aßmus B_HID_UID_BCS_PREVENT_READ_OF_BARCODES, 82*b6ec842dSStephan Aßmus B_HID_UID_BCS_INITIATE_BARCODE_READ, 83*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_STATE, 84*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_MODE, 85*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_MODE_BLINKING_LASER_ON, 86*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_MODE_CONTINUOUS_LASER_ON, 87*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_MODE_LASER_ON_WHILE_PULLED, 88*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRIGGER_MODE_LASER_STAYS_ON_AFTER_TRIGGER_RELEASE, 89*b6ec842dSStephan Aßmus 90*b6ec842dSStephan Aßmus B_HID_UID_BCS_COMMIT_PARAMETERS_TO_NVM = 0x6d, 91*b6ec842dSStephan Aßmus B_HID_UID_BCS_PARAMETER_SCANNING, 92*b6ec842dSStephan Aßmus B_HID_UID_BCS_PARAMETERS_CHANGED, 93*b6ec842dSStephan Aßmus B_HID_UID_BCS_SET_PARAMETER_DEFAULT_VALUES, 94*b6ec842dSStephan Aßmus 95*b6ec842dSStephan Aßmus B_HID_UID_BCS_SCANNER_IN_CRADLE = 0x75, 96*b6ec842dSStephan Aßmus B_HID_UID_BCS_SCANNER_IN_RANGE, 97*b6ec842dSStephan Aßmus 98*b6ec842dSStephan Aßmus B_HID_UID_BCS_AIM_DURATION = 0x7a, 99*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_LAMP_DURATION, 100*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_LAMP_INTENSITY, 101*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_LED, 102*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_TONE_FREQUENCY, 103*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_TONE_LENGTH, 104*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_TONE_VOLUME, 105*b6ec842dSStephan Aßmus 106*b6ec842dSStephan Aßmus B_HID_UID_BCS_NO_READ_MESSAGE = 0x82, 107*b6ec842dSStephan Aßmus B_HID_UID_BCS_NOT_ON_FILE_VOLUME, 108*b6ec842dSStephan Aßmus B_HID_UID_BCS_POWERUP_BEEP, 109*b6ec842dSStephan Aßmus B_HID_UID_BCS_SOUND_ERROR_BEEP, 110*b6ec842dSStephan Aßmus B_HID_UID_BCS_SOUND_NOT_ON_FILE_BEEP, 111*b6ec842dSStephan Aßmus B_HID_UID_BCS_GOOD_READ_WHEN_TO_WRITE, 112*b6ec842dSStephan Aßmus B_HID_UID_BCS_GRWTI_AFTER_DECODE, 113*b6ec842dSStephan Aßmus B_HID_UID_BCS_GRWTI_BEEP_LAMP_AFTER_TRANSMIT, 114*b6ec842dSStephan Aßmus B_HID_UID_BCS_GRWTI_NO_BEEP_LAMP_USE_AT_ALL, 115*b6ec842dSStephan Aßmus 116*b6ec842dSStephan Aßmus B_HID_UID_BCS_BOOKLAND_EAN = 0x91, 117*b6ec842dSStephan Aßmus B_HID_UID_BCS_CONVERT_EAN_8_TO_13_TYPE, 118*b6ec842dSStephan Aßmus B_HID_UID_BCS_CONVERT_UPC_A_TO_EAN_13, 119*b6ec842dSStephan Aßmus B_HID_UID_BCS_CONVERT_UPC_E_TO_A, 120*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_13, 121*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_8, 122*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_99_128_MANDATORY, 123*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_99_P5_128_OPTIONAL, 124*b6ec842dSStephan Aßmus 125*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_EAN = 0x9a, 126*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_EAN_COUPON_CODE, 127*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_EAN_PERIODICALS, 128*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_A, 129*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_A_WITH_128_MANDATORY, 130*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_A_WITH_128_OPTIONAL, 131*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_A_WITH_P5_OPTIONAL, 132*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_E, 133*b6ec842dSStephan Aßmus B_HID_UID_BCS_UPC_E1, 134*b6ec842dSStephan Aßmus 135*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL = 0xa9, 136*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_AUTO_DISCRIMINATE_PLUS_2, 137*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_ONLY_DECODE_WITH_PLUS_2, 138*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_IGNORE_PLUS_2, 139*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_AUTO_DISCRIMINATE_PLUS_5, 140*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_ONLY_DECODE_WITH_PLUS_5, 141*b6ec842dSStephan Aßmus B_HID_UID_BCS_PERIODICAL_IGNORE_PLUS_5, 142*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK, 143*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DISABLE_PRICE, 144*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_ENABLE_4_DIGIT_PRICE, 145*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_ENABLE_5_DIGIT_PRICE, 146*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_ENABLE_EUROPEAN_4_DIGIT_PRICE, 147*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_ENABLE_EUROPEAN_5_DIGIT_PRICE, 148*b6ec842dSStephan Aßmus 149*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_TWO_LABEL = 0xb7, 150*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_THREE_LABEL, 151*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_8_FLAG_DIGIT_1, 152*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_8_FLAG_DIGIT_2, 153*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_8_FLAG_DIGIT_3, 154*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_13_FLAG_DIGIT_1, 155*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_13_FLAG_DIGIT_2, 156*b6ec842dSStephan Aßmus B_HID_UID_BCS_EAN_13_FLAG_DIGIT_3, 157*b6ec842dSStephan Aßmus B_HID_UID_BCS_ADD_EAN_2_3_LABEL_DEFINITION, 158*b6ec842dSStephan Aßmus B_HID_UID_BCS_CLEAR_ALL_EAN_2_3_LABEL_DEFINITIONS, 159*b6ec842dSStephan Aßmus 160*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODABAR = 0xc3, 161*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_128, 162*b6ec842dSStephan Aßmus 163*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_39 = 0xc7, 164*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_93, 165*b6ec842dSStephan Aßmus B_HID_UID_BCS_FULL_ASCII_CONVERSION, 166*b6ec842dSStephan Aßmus B_HID_UID_BCS_INTERLEAVED_2_OF_5, 167*b6ec842dSStephan Aßmus B_HID_UID_BCS_ITALIAN_PHARMACY_CODE, 168*b6ec842dSStephan Aßmus B_HID_UID_BCS_MSI_PLESSEY, 169*b6ec842dSStephan Aßmus B_HID_UID_BCS_STANDARD_2_OF_5_IATA, 170*b6ec842dSStephan Aßmus B_HID_UID_BCS_STANDARD_2_OF_5, 171*b6ec842dSStephan Aßmus 172*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRANSMIT_START_STOP = 0xd3, 173*b6ec842dSStephan Aßmus B_HID_UID_BCS_TRI_OPTIC, 174*b6ec842dSStephan Aßmus B_HID_UID_BCS_UCC_EAN_128, 175*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT, 176*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_DISABLE, 177*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_OPCC, 178*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_INTERLEAVED_2_OF_5_USS, 179*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_OPCC, 180*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_STANDARD_2_OF_5_USS, 181*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_ONE_MSI_PLESSEY, 182*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_ENABLE_TWO_MSI_PLESSEY, 183*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_CODABAR_ENABLE, 184*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHECK_DIGIT_CODE_39_ENABLE, 185*b6ec842dSStephan Aßmus 186*b6ec842dSStephan Aßmus B_HID_UID_BCS_DISABLE_CHECK_DIGIT_TRANSMIT = 0xf1, 187*b6ec842dSStephan Aßmus B_HID_UID_BCS_ENABLE_CHECK_DIGIT_TRANSMIT, 188*b6ec842dSStephan Aßmus 189*b6ec842dSStephan Aßmus B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_1 = 0xfb, 190*b6ec842dSStephan Aßmus B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_2, 191*b6ec842dSStephan Aßmus B_HID_UID_BCS_SYMBOLOGY_IDENTIFIER_3, 192*b6ec842dSStephan Aßmus B_HID_UID_BCS_DECODED_DATA, 193*b6ec842dSStephan Aßmus B_HID_UID_BCS_DECODE_DATA_CONTINUED, 194*b6ec842dSStephan Aßmus B_HID_UID_BCS_BAR_SPACE_DATA, 195*b6ec842dSStephan Aßmus B_HID_UID_BCS_SCANNER_DATA_ACCURACY, 196*b6ec842dSStephan Aßmus B_HID_UID_BCS_RAW_DATA_POLARITY, 197*b6ec842dSStephan Aßmus B_HID_UID_BCS_POLARITY_INVERT_BAR_CODE, 198*b6ec842dSStephan Aßmus B_HID_UID_BCS_POLARITY_NORMAL_BAR_CODE, 199*b6ec842dSStephan Aßmus 200*b6ec842dSStephan Aßmus B_HID_UID_BCS_MINIMUM_LENGTH_TO_DECODE = 0x106, 201*b6ec842dSStephan Aßmus B_HID_UID_BCS_MAXIMUM_LENGTH_TO_DECODE, 202*b6ec842dSStephan Aßmus B_HID_UID_BCS_FIRST_DISCRETE_LENGTH_TO_DECODE, 203*b6ec842dSStephan Aßmus B_HID_UID_BCS_SECOND_DESCRETE_LENGTH_TO_DECODE, 204*b6ec842dSStephan Aßmus B_HID_UID_BCS_DATA_LENGTH_METHOD, 205*b6ec842dSStephan Aßmus B_HID_UID_BCS_DL_METHOD_READ_ANY, 206*b6ec842dSStephan Aßmus B_HID_UID_BCS_DL_METHOD_CHECK_IN_RANGE, 207*b6ec842dSStephan Aßmus B_HID_UID_BCS_DL_METHOD_CHECK_FOR_DISCRETE, 208*b6ec842dSStephan Aßmus 209*b6ec842dSStephan Aßmus B_HID_UID_BCS_AZTEC_CODE = 0x110, 210*b6ec842dSStephan Aßmus B_HID_UID_BCS_BC412, 211*b6ec842dSStephan Aßmus B_HID_UID_BCS_CHANNEL_CODE, 212*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_16, 213*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_32, 214*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_49, 215*b6ec842dSStephan Aßmus B_HID_UID_BCS_CODE_ONE, 216*b6ec842dSStephan Aßmus B_HID_UID_BCS_COLORCODE, 217*b6ec842dSStephan Aßmus B_HID_UID_BCS_DATA_MATRIX, 218*b6ec842dSStephan Aßmus B_HID_UID_BCS_MAXI_CODE, 219*b6ec842dSStephan Aßmus B_HID_UID_BCS_MICRO_PDF, 220*b6ec842dSStephan Aßmus B_HID_UID_BCS_PDF_417, 221*b6ec842dSStephan Aßmus B_HID_UID_BCS_POSI_CODE, 222*b6ec842dSStephan Aßmus B_HID_UID_BCS_QR_CODE, 223*b6ec842dSStephan Aßmus B_HID_UID_BCS_SUPER_CODE, 224*b6ec842dSStephan Aßmus B_HID_UID_BCS_ULTRA_CODE, 225*b6ec842dSStephan Aßmus B_HID_UID_BCS_USD_5_SLUG_CODE, 226*b6ec842dSStephan Aßmus B_HID_UID_BCS_VERI_CODE 227*b6ec842dSStephan Aßmus }; 228*b6ec842dSStephan Aßmus 229*b6ec842dSStephan Aßmus 230*b6ec842dSStephan Aßmus #endif // _USB_HID_PAGE_BAR_CODE_SCANNER_H 231