WiaDef.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:61k
- /****************************************************************************
- *
- * (C) COPYRIGHT 1998-2000, MICROSOFT CORP.
- *
- * FILE: wiadef.h
- *
- * VERSION: 2.0
- *
- * DATE: 7/27/2000
- *
- * DESCRIPTION:
- * Defines WIA constants.
- *
- *****************************************************************************/
- #ifndef _WIADEF_H_
- #define _WIADEF_H_
- //
- // Set packing
- //
- #include <pshpack8.h>
- //
- // Include COM definitions
- //
- #ifndef _NO_COM
- #include <objbase.h>
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- /**************************************************************************
- *
- * WIA Errors
- *
- ***************************************************************************/
- //
- // Define the facility code. Move this to sdkinc???
- //
- #define FACILITY_WIA 33
- //
- // Definitions for WIA_ERRORs and WIA_STATUSs. Applications can test for these returns
- // on API return, to keep users informed of conditions which a user
- // could correct.
- //
- #define BASE_VAL_WIA_ERROR 0x00000000
- #define BASE_VAL_WIA_SUCCESS 0x00000000
- #define WIA_ERROR_GENERAL_ERROR MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 1))
- #define WIA_ERROR_PAPER_JAM MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 2))
- #define WIA_ERROR_PAPER_EMPTY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 3))
- #define WIA_ERROR_PAPER_PROBLEM MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 4))
- #define WIA_ERROR_OFFLINE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 5))
- #define WIA_ERROR_BUSY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 6))
- #define WIA_ERROR_WARMING_UP MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 7))
- #define WIA_ERROR_USER_INTERVENTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 8))
- #define WIA_ERROR_ITEM_DELETED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 9))
- #define WIA_ERROR_DEVICE_COMMUNICATION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 10))
- #define WIA_ERROR_INVALID_COMMAND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 11))
- #define WIA_ERROR_INCORRECT_HARDWARE_SETTING MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 12))
- #define WIA_ERROR_DEVICE_LOCKED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 13))
- #define WIA_ERROR_EXCEPTION_IN_DRIVER MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 14))
- #define WIA_ERROR_INVALID_DRIVER_RESPONSE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 15))
- #define WIA_STATUS_END_OF_MEDIA MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, (BASE_VAL_WIA_SUCCESS + 1))
- //
- // Returned by SelectDeviceDlg and SelectDeviceDlgId when there are no devices avaiable
- //
- #define WIA_S_NO_DEVICE_AVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, (BASE_VAL_WIA_ERROR + 21))
- //
- // SelectDeviceDlg & GetImageDlg flags
- //
- #define WIA_SELECT_DEVICE_NODEFAULT 0x00000001
- //
- // GetImageDlg & DeviceDlg flags
- //
- #define WIA_DEVICE_DIALOG_SINGLE_IMAGE 0x00000002 // Only allow one image to be selected
- #define WIA_DEVICE_DIALOG_USE_COMMON_UI 0x00000004 // Give preference to the system-provided UI, if available
- //**************************************************************************
- //
- // Image types
- //
- //**************************************************************************
- DEFINE_GUID(WiaImgFmt_UNDEFINED, 0xb96b3ca9,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_RAWRGB, 0xbca48b55,0xf272,0x4371,0xb0,0xf1,0x4a,0x15,0xd,0x5,0x7b,0xb4);
- DEFINE_GUID(WiaImgFmt_MEMORYBMP, 0xb96b3caa,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_BMP, 0xb96b3cab,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_EMF, 0xb96b3cac,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_WMF, 0xb96b3cad,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_JPEG, 0xb96b3cae,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_PNG, 0xb96b3caf,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_GIF, 0xb96b3cb0,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_TIFF, 0xb96b3cb1,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_EXIF, 0xb96b3cb2,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_PHOTOCD, 0xb96b3cb3,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_FLASHPIX, 0xb96b3cb4,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- DEFINE_GUID(WiaImgFmt_ICO, 0xb96b3cb5,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
- // Canon Image File Format
- DEFINE_GUID(WiaImgFmt_CIFF,0x9821a8ab,0x3a7e,0x4215,0x94,0xe0,0xd2,0x7a,0x46,0x0c,0x03,0xb2);
- // Quickdraw Image Format
- DEFINE_GUID(WiaImgFmt_PICT,0xa6bc85d8,0x6b3e,0x40ee,0xa9,0x5c,0x25,0xd4,0x82,0xe4,0x1a,0xdc);
- // JPEG 2000 baseline file format
- DEFINE_GUID(WiaImgFmt_JPEG2K,0x344ee2b2,0x39db,0x4dde,0x81,0x73,0xc4,0xb7,0x5f,0x8f,0x1e,0x49);
- // JPEG 2000 extended file format
- DEFINE_GUID(WiaImgFmt_JPEG2KX,0x43e14614,0xc80a,0x4850,0xba,0xf3,0x4b,0x15,0x2d,0xc8,0xda,0x27);
- //**************************************************************************
- //
- // Document and other types
- //
- // Note: HTML, AVI, and MPEG used to have different GUIDs. Use the GUIDs
- // defined below from now on.
- //
- //**************************************************************************
- DEFINE_GUID(WiaImgFmt_RTF, 0x573dd6a3,0x4834,0x432d,0xa9,0xb5,0xe1,0x98,0xdd,0x9e,0x89,0xd);
- DEFINE_GUID(WiaImgFmt_XML, 0xb9171457,0xdac8,0x4884,0xb3,0x93,0x15,0xb4,0x71,0xd5,0xf0,0x7e);
- DEFINE_GUID(WiaImgFmt_HTML, 0xc99a4e62,0x99de,0x4a94,0xac,0xca,0x71,0x95,0x6a,0xc2,0x97,0x7d);
- DEFINE_GUID(WiaImgFmt_TXT, 0xfafd4d82,0x723f,0x421f,0x93,0x18,0x30,0x50,0x1a,0xc4,0x4b,0x59);
- DEFINE_GUID(WiaImgFmt_MPG, 0xecd757e4,0xd2ec,0x4f57,0x95,0x5d,0xbc,0xf8,0xa9,0x7c,0x4e,0x52);
- DEFINE_GUID(WiaImgFmt_AVI, 0x32f8ca14,0x87c,0x4908,0xb7,0xc4,0x67,0x57,0xfe,0x7e,0x90,0xab);
- DEFINE_GUID(WiaImgFmt_ASF, 0x8d948ee9,0xd0aa,0x4a12,0x9d,0x9a,0x9c,0xc5,0xde,0x36,0x19,0x9b);
- DEFINE_GUID(WiaImgFmt_SCRIPT, 0xfe7d6c53,0x2dac,0x446a,0xb0,0xbd,0xd7,0x3e,0x21,0xe9,0x24,0xc9);
- DEFINE_GUID(WiaImgFmt_EXEC, 0x485da097,0x141e,0x4aa5,0xbb,0x3b,0xa5,0x61,0x8d,0x95,0xd0,0x2b);
- DEFINE_GUID(WiaImgFmt_UNICODE16,0x1b7639b6,0x6357,0x47d1,0x9a,0x07,0x12,0x45,0x2d,0xc0,0x73,0xe9);
- DEFINE_GUID(WiaImgFmt_DPOF,0x369eeeab,0xa0e8,0x45ca,0x86,0xa6,0xa8,0x3c,0xe5,0x69,0x7e,0x28);
- //**************************************************************************
- //
- // Audio types
- //
- //**************************************************************************
- DEFINE_GUID(WiaAudFmt_WAV, 0xf818e146,0x07af,0x40ff,0xae,0x55,0xbe,0x8f,0x2c,0x06,0x5d,0xbe);
- DEFINE_GUID(WiaAudFmt_MP3, 0x0fbc71fb,0x43bf,0x49f2,0x91,0x90,0xe6,0xfe,0xcf,0xf3,0x7e,0x54);
- DEFINE_GUID(WiaAudFmt_AIFF, 0x66e2bf4f,0xb6fc,0x443f,0x94,0xc8,0x2f,0x33,0xc8,0xa6,0x5a,0xaf);
- DEFINE_GUID(WiaAudFmt_WMA, 0xd61d6413,0x8bc2,0x438f,0x93,0xad,0x21,0xbd,0x48,0x4d,0xb6,0xa1);
- //**************************************************************************
- //
- // WIA Events
- //
- //**************************************************************************
- //
- // Event registration flags, used by RegisterEventLaunch,
- // RegisterEventCallbackInterface and RegisterEventCallbackCLSID.
- //
- #define WIA_REGISTER_EVENT_CALLBACK 0x00000001
- #define WIA_UNREGISTER_EVENT_CALLBACK 0x00000002
- #define WIA_SET_DEFAULT_HANDLER 0x00000004
- //
- // Event type : individual bits of the possible event type combinations
- //
- #define WIA_NOTIFICATION_EVENT 0x00000001
- #define WIA_ACTION_EVENT 0x00000002
- //
- // Flag to indicate the corresponding persistent handler is default
- //
- #define WIA_IS_DEFAULT_HANDLER 0x00000001
- //
- // Event GUIDs
- //
- DEFINE_GUID(WIA_EVENT_DEVICE_DISCONNECTED, 0x143e4e83, 0x6497, 0x11d2, 0xa2, 0x31, 0x0, 0xc0, 0x4f, 0xa3, 0x18, 0x9);
- DEFINE_GUID(WIA_EVENT_DEVICE_CONNECTED, 0xa28bbade, 0x64b6, 0x11d2, 0xa2, 0x31, 0x0, 0xc0, 0x4f, 0xa3, 0x18, 0x9);
- DEFINE_GUID(WIA_EVENT_ITEM_DELETED, 0x1d22a559, 0xe14f, 0x11d2, 0xb3, 0x26, 0x00, 0xc0, 0x4f, 0x68, 0xce, 0x61);
- DEFINE_GUID(WIA_EVENT_ITEM_CREATED, 0x4c8f4ef5, 0xe14f, 0x11d2, 0xb3, 0x26, 0x00, 0xc0, 0x4f, 0x68, 0xce, 0x61);
- DEFINE_GUID(WIA_EVENT_TREE_UPDATED, 0xc9859b91, 0x4ab2, 0x4cd6, 0xa1, 0xfc, 0x58, 0x2e, 0xec, 0x55, 0xe5, 0x85);
- DEFINE_GUID(WIA_EVENT_VOLUME_INSERT, 0x9638bbfd, 0xd1bd, 0x11d2, 0xb3, 0x1f, 0x00, 0xc0, 0x4f, 0x68, 0xce, 0x61);
- DEFINE_GUID(WIA_EVENT_SCAN_IMAGE, 0xa6c5a715, 0x8c6e, 0x11d2, 0x97, 0x7a, 0x0, 0x0, 0xf8, 0x7a, 0x92, 0x6f);
- DEFINE_GUID(WIA_EVENT_SCAN_PRINT_IMAGE, 0xb441f425, 0x8c6e, 0x11d2, 0x97, 0x7a, 0x0, 0x0, 0xf8, 0x7a, 0x92, 0x6f);
- DEFINE_GUID(WIA_EVENT_SCAN_FAX_IMAGE, 0xc00eb793, 0x8c6e, 0x11d2, 0x97, 0x7a, 0x0, 0x0, 0xf8, 0x7a, 0x92, 0x6f);
- DEFINE_GUID(WIA_EVENT_SCAN_OCR_IMAGE, 0x9d095b89, 0x37d6, 0x4877, 0xaf, 0xed, 0x62, 0xa2, 0x97, 0xdc, 0x6d, 0xbe);
- DEFINE_GUID(WIA_EVENT_SCAN_EMAIL_IMAGE, 0xc686dcee, 0x54f2, 0x419e, 0x9a, 0x27, 0x2f, 0xc7, 0xf2, 0xe9, 0x8f, 0x9e);
- DEFINE_GUID(WIA_EVENT_SCAN_FILM_IMAGE, 0x9b2b662c, 0x6185, 0x438c, 0xb6, 0x8b, 0xe3, 0x9e, 0xe2, 0x5e, 0x71, 0xcb);
- DEFINE_GUID(WIA_EVENT_SCAN_IMAGE2, 0xfc4767c1, 0xc8b3, 0x48a2, 0x9c, 0xfa, 0x2e, 0x90, 0xcb, 0x3d, 0x35, 0x90);
- DEFINE_GUID(WIA_EVENT_SCAN_IMAGE3, 0x154e27be, 0xb617, 0x4653, 0xac, 0xc5, 0xf, 0xd7, 0xbd, 0x4c, 0x65, 0xce);
- DEFINE_GUID(WIA_EVENT_SCAN_IMAGE4, 0xa65b704a, 0x7f3c, 0x4447, 0xa7, 0x5d, 0x8a, 0x26, 0xdf, 0xca, 0x1f, 0xdf);
- DEFINE_GUID(WIA_EVENT_STORAGE_CREATED, 0x353308b2, 0xfe73, 0x46c8, 0x89, 0x5e, 0xfa, 0x45, 0x51, 0xcc, 0xc8, 0x5a);
- DEFINE_GUID(WIA_EVENT_STORAGE_DELETED, 0x5e41e75e, 0x9390, 0x44c5, 0x9a, 0x51, 0xe4, 0x70, 0x19, 0xe3, 0x90, 0xcf);
- DEFINE_GUID(WIA_EVENT_STI_PROXY, 0xd711f81f, 0x1f0d, 0x422d, 0x86, 0x41, 0x92, 0x7d, 0x1b, 0x93, 0xe5, 0xe5);
- DEFINE_GUID(WIA_EVENT_CANCEL_IO, 0xc860f7b8, 0x9ccd, 0x41ea, 0xbb, 0xbf, 0x4d, 0xd0, 0x9c, 0x5b, 0x17, 0x95);
- //
- // Power management event GUIDs, sent by the WIA service to drivers
- //
- DEFINE_GUID(WIA_EVENT_POWER_SUSPEND, 0xa0922ff9, 0xc3b4, 0x411c, 0x9e, 0x29, 0x03, 0xa6, 0x69, 0x93, 0xd2, 0xbe);
- DEFINE_GUID(WIA_EVENT_POWER_RESUME, 0x618f153e, 0xf686, 0x4350, 0x96, 0x34, 0x41, 0x15, 0xa3, 0x04, 0x83, 0x0c);
- //
- // No action handler and prompt handler
- //
- DEFINE_GUID(WIA_EVENT_HANDLER_NO_ACTION, 0xe0372b7d, 0xe115, 0x4525, 0xbc, 0x55, 0xb6, 0x29, 0xe6, 0x8c, 0x74, 0x5a);
- DEFINE_GUID(WIA_EVENT_HANDLER_PROMPT, 0x5f4baad0, 0x4d59, 0x4fcd, 0xb2, 0x13, 0x78, 0x3c, 0xe7, 0xa9, 0x2f, 0x22);
- #define WIA_EVENT_DEVICE_DISCONNECTED_STR L"Device Disconnected"
- #define WIA_EVENT_DEVICE_CONNECTED_STR L"Device Connected"
- //**************************************************************************
- //
- // WIA Commands
- //
- //**************************************************************************
- DEFINE_GUID(WIA_CMD_SYNCHRONIZE, 0x9b26b7b2, 0xacad, 0x11d2, 0xa0, 0x93, 0x00, 0xc0, 0x4f, 0x72, 0xdc, 0x3c);
- DEFINE_GUID(WIA_CMD_TAKE_PICTURE, 0xaf933cac, 0xacad, 0x11d2, 0xa0, 0x93, 0x00, 0xc0, 0x4f, 0x72, 0xdc, 0x3c);
- DEFINE_GUID(WIA_CMD_DELETE_ALL_ITEMS, 0xe208c170, 0xacad, 0x11d2, 0xa0, 0x93, 0x00, 0xc0, 0x4f, 0x72, 0xdc, 0x3c);
- DEFINE_GUID(WIA_CMD_CHANGE_DOCUMENT, 0x04e725b0, 0xacae, 0x11d2, 0xa0, 0x93, 0x00, 0xc0, 0x4f, 0x72, 0xdc, 0x3c);
- DEFINE_GUID(WIA_CMD_UNLOAD_DOCUMENT, 0x1f3b3d8e, 0xacae, 0x11d2, 0xa0, 0x93, 0x00, 0xc0, 0x4f, 0x72, 0xdc, 0x3c);
- DEFINE_GUID(WIA_CMD_DIAGNOSTIC, 0x10ff52f5, 0xde04, 0x4cf0, 0xa5, 0xad, 0x69, 0x1f, 0x8d, 0xce, 0x01, 0x41);
- //
- // The following are private commands for debugging use only.
- //
- DEFINE_GUID(WIA_CMD_DELETE_DEVICE_TREE, 0x73815942, 0xdbea, 0x11d2, 0x84, 0x16, 0x00, 0xc0, 0x4f, 0xa3, 0x61, 0x45);
- DEFINE_GUID(WIA_CMD_BUILD_DEVICE_TREE, 0x9cba5ce0, 0xdbea, 0x11d2, 0x84, 0x16, 0x00, 0xc0, 0x4f, 0xa3, 0x61, 0x45);
- //**************************************************************************
- //
- // WIA Icons
- //
- // Event : -1000 to -1499 (Standard), -1500 to -1999 (Custom)
- // Command : -2000 to -2499 (Standard), -2500 to -2999 (Custom)
- //
- //**************************************************************************
- #define WIA_ICON_DEVICE_DISCONNECTED (L"sti.dll,-1001")
- #define WIA_ICON_DEVICE_CONNECTED (L"sti.dll,-1001")
- #define WIA_ICON_ITEM_DELETED (L"sti.dll,-1001")
- #define WIA_ICON_ITEM_CREATED (L"sti.dll,-1001")
- #define WIA_ICON_VOLUME_INSERT (L"sti.dll,-1001")
- #define WIA_ICON_SCAN_BUTTON_PRESS (L"sti.dll,-1001")
- #define WIA_ICON_SYNCHRONIZE (L"sti.dll,-2000")
- #define WIA_ICON_TAKE_PICTURE (L"sti.dll,-2001")
- #define WIA_ICON_DELETE_ALL_ITEMS (L"sti.dll,-2002")
- #define WIA_ICON_CHANGE_DOCUMENT (L"sti.dll,-2003")
- #define WIA_ICON_UNLOAD_DOCUMENT (L"sti.dll,-2004")
- #define WIA_ICON_DELETE_DEVICE_TREE (L"sti.dll,-2005")
- #define WIA_ICON_BUILD_DEVICE_TREE (L"sti.dll,-2006")
- //**************************************************************************
- //
- // WIA Callbacks
- //
- //**************************************************************************
- //
- // IImageTransfer TYMED
- //
- #define TYMED_CALLBACK 128
- #define TYMED_MULTIPAGE_FILE 256
- #define TYMED_MULTIPAGE_CALLBACK 512
- //
- // IImageTransfer Callback Status. Messages must be a single value
- //
- #define IT_MSG_DATA_HEADER 0x0001
- #define IT_MSG_DATA 0x0002
- #define IT_MSG_STATUS 0x0003
- #define IT_MSG_TERMINATION 0x0004
- #define IT_MSG_NEW_PAGE 0x0005
- #define IT_MSG_FILE_PREVIEW_DATA 0x0006
- #define IT_MSG_FILE_PREVIEW_DATA_HEADER 0x0007
- //
- // Flags may be bit field combinations
- //
- #define IT_STATUS_TRANSFER_FROM_DEVICE 0x0001
- #define IT_STATUS_PROCESSING_DATA 0x0002
- #define IT_STATUS_TRANSFER_TO_CLIENT 0x0004
- //
- // IWIAEventCallback codes
- //
- #define WIA_MAJOR_EVENT_DEVICE_CONNECT 0x01
- #define WIA_MAJOR_EVENT_DEVICE_DISCONNECT 0x02
- #define WIA_MAJOR_EVENT_PICTURE_TAKEN 0x03
- #define WIA_MAJOR_EVENT_PICTURE_DELETED 0x04
- //
- // Device connection status
- //
- #define WIA_DEVICE_NOT_CONNECTED 0
- #define WIA_DEVICE_CONNECTED 1
- //**************************************************************************
- //
- // WIA Enumeration Flags
- //
- //**************************************************************************
- //
- // EnumDeviceCapabilities flags
- //
- #define WIA_DEVICE_COMMANDS 1
- #define WIA_DEVICE_EVENTS 2
- //
- // EnumDeviceInfo Flags
- //
- #define WIA_DEVINFO_ENUM_LOCAL 0x00000010
- //**************************************************************************
- //
- // WIA Item constants
- //
- //**************************************************************************
- //
- // Item Types
- //
- #define WiaItemTypeFree 0x00000000
- #define WiaItemTypeImage 0x00000001
- #define WiaItemTypeFile 0x00000002
- #define WiaItemTypeFolder 0x00000004
- #define WiaItemTypeRoot 0x00000008
- #define WiaItemTypeAnalyze 0x00000010
- #define WiaItemTypeAudio 0x00000020
- #define WiaItemTypeDevice 0x00000040
- #define WiaItemTypeDeleted 0x00000080
- #define WiaItemTypeDisconnected 0x00000100
- #define WiaItemTypeHPanorama 0x00000200
- #define WiaItemTypeVPanorama 0x00000400
- #define WiaItemTypeBurst 0x00000800
- #define WiaItemTypeStorage 0x00001000
- #define WiaItemTypeTransfer 0x00002000
- #define WiaItemTypeGenerated 0x00004000
- #define WiaItemTypeHasAttachments 0x00008000
- #define WiaItemTypeVideo 0x00010000
- //
- // 0x00020000 has been reserved for the TWAIN compatiblity layer
- // pass-through feature.
- //
- #define WiaItemTypeRemoved 0x80000000
- #define WiaItemTypeMask 0x8003FFFF
- //
- // Big max device specific item context
- //
- #define WIA_MAX_CTX_SIZE 0x01000000
- //**************************************************************************
- //
- // WIA Properties
- //
- //**************************************************************************
- //
- // Property access flags
- //
- #define WIA_PROP_READ 0x01
- #define WIA_PROP_WRITE 0x02
- #define WIA_PROP_RW (WIA_PROP_READ | WIA_PROP_WRITE)
- #define WIA_PROP_SYNC_REQUIRED 0x04
- #define WIA_PROP_NONE 0x08
- #define WIA_PROP_RANGE 0x10
- #define WIA_PROP_LIST 0x20
- #define WIA_PROP_FLAG 0x40
- #define WIA_PROP_CACHEABLE 0x10000
- //
- // Item access flags
- //
- #define WIA_ITEM_CAN_BE_DELETED 0x80
- #define WIA_ITEM_READ WIA_PROP_READ
- #define WIA_ITEM_WRITE WIA_PROP_WRITE
- #define WIA_ITEM_RD (WIA_ITEM_READ | WIA_ITEM_CAN_BE_DELETED)
- #define WIA_ITEM_RWD (WIA_ITEM_READ | WIA_ITEM_WRITE | WIA_ITEM_CAN_BE_DELETED)
- #ifndef __WIAPROP_H_INCLUDED
- #define __WIAPROP_H_INCLUDED
- //
- // Device information properties
- //
- #define WIA_RESERVED_FOR_SMALL_NEW_PROPS 256
- #define WIA_RESERVED_FOR_NEW_PROPS 1024
- #define WIA_RESERVED_FOR_ALL_MS_PROPS (1024*32)
- #define WIA_DIP_FIRST 2
- #define WIA_DIP_DEV_ID 2
- #define WIA_DIP_VEND_DESC 3
- #define WIA_DIP_DEV_DESC 4
- #define WIA_DIP_DEV_TYPE 5
- #define WIA_DIP_PORT_NAME 6
- #define WIA_DIP_DEV_NAME 7
- #define WIA_DIP_SERVER_NAME 8
- #define WIA_DIP_REMOTE_DEV_ID 9
- #define WIA_DIP_UI_CLSID 10
- #define WIA_DIP_HW_CONFIG 11
- #define WIA_DIP_BAUDRATE 12
- #define WIA_DIP_STI_GEN_CAPABILITIES 13
- #define WIA_DIP_WIA_VERSION 14
- #define WIA_DIP_DRIVER_VERSION 15
- #define WIA_DIP_LAST 15
- #define WIA_NUM_DIP 1 + WIA_DIP_LAST - WIA_DIP_FIRST
- #define WIA_DIP_DEV_ID_STR L"Unique Device ID"
- #define WIA_DIP_VEND_DESC_STR L"Manufacturer"
- #define WIA_DIP_DEV_DESC_STR L"Description"
- #define WIA_DIP_DEV_TYPE_STR L"Type"
- #define WIA_DIP_PORT_NAME_STR L"Port"
- #define WIA_DIP_DEV_NAME_STR L"Name"
- #define WIA_DIP_SERVER_NAME_STR L"Server"
- #define WIA_DIP_REMOTE_DEV_ID_STR L"Remote Device ID"
- #define WIA_DIP_UI_CLSID_STR L"UI Class ID"
- #define WIA_DIP_HW_CONFIG_STR L"Hardware Configuration"
- #define WIA_DIP_BAUDRATE_STR L"BaudRate"
- #define WIA_DIP_STI_GEN_CAPABILITIES_STR L"STI Generic Capabilities"
- #define WIA_DIP_WIA_VERSION_STR L"WIA Version"
- #define WIA_DIP_DRIVER_VERSION_STR L"Driver Version"
- //
- // Constant arrays for device information property init
- //
- #ifdef WIA_DECLARE_DEVINFO_PROP_ARRAY
- PROPSPEC g_psDeviceInfo[WIA_NUM_DIP] =
- {
- {PRSPEC_PROPID, WIA_DIP_DEV_ID},
- {PRSPEC_PROPID, WIA_DIP_VEND_DESC},
- {PRSPEC_PROPID, WIA_DIP_DEV_DESC},
- {PRSPEC_PROPID, WIA_DIP_DEV_TYPE},
- {PRSPEC_PROPID, WIA_DIP_PORT_NAME},
- {PRSPEC_PROPID, WIA_DIP_DEV_NAME},
- {PRSPEC_PROPID, WIA_DIP_SERVER_NAME},
- {PRSPEC_PROPID, WIA_DIP_REMOTE_DEV_ID},
- {PRSPEC_PROPID, WIA_DIP_UI_CLSID},
- {PRSPEC_PROPID, WIA_DIP_HW_CONFIG},
- {PRSPEC_PROPID, WIA_DIP_BAUDRATE},
- {PRSPEC_PROPID, WIA_DIP_STI_GEN_CAPABILITIES},
- {PRSPEC_PROPID, WIA_DIP_WIA_VERSION},
- {PRSPEC_PROPID, WIA_DIP_DRIVER_VERSION},
- };
- PROPID g_piDeviceInfo[WIA_NUM_DIP] =
- {
- WIA_DIP_DEV_ID,
- WIA_DIP_VEND_DESC,
- WIA_DIP_DEV_DESC,
- WIA_DIP_DEV_TYPE,
- WIA_DIP_PORT_NAME,
- WIA_DIP_DEV_NAME,
- WIA_DIP_SERVER_NAME,
- WIA_DIP_REMOTE_DEV_ID,
- WIA_DIP_UI_CLSID,
- WIA_DIP_HW_CONFIG,
- WIA_DIP_BAUDRATE,
- WIA_DIP_STI_GEN_CAPABILITIES,
- WIA_DIP_WIA_VERSION,
- WIA_DIP_DRIVER_VERSION,
- };
- LPOLESTR g_pszDeviceInfo[WIA_NUM_DIP] =
- {
- WIA_DIP_DEV_ID_STR,
- WIA_DIP_VEND_DESC_STR,
- WIA_DIP_DEV_DESC_STR,
- WIA_DIP_DEV_TYPE_STR,
- WIA_DIP_PORT_NAME_STR,
- WIA_DIP_DEV_NAME_STR,
- WIA_DIP_SERVER_NAME_STR,
- WIA_DIP_REMOTE_DEV_ID_STR,
- WIA_DIP_UI_CLSID_STR,
- WIA_DIP_HW_CONFIG_STR,
- WIA_DIP_BAUDRATE_STR,
- WIA_DIP_STI_GEN_CAPABILITIES_STR,
- WIA_DIP_WIA_VERSION_STR,
- WIA_DIP_DRIVER_VERSION_STR,
- };
- #else
- extern PROPSPEC g_psDeviceInfo[WIA_NUM_DIP];
- extern PROPID g_piDeviceInfo[WIA_NUM_DIP];
- extern LPOLESTR g_pszDeviceInfo[WIA_NUM_DIP];
- #endif
- //
- // Common device properties
- //
- #define WIA_DPA_FIRST WIA_DIP_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_DPA_FIRMWARE_VERSION WIA_DPA_FIRST + 0
- #define WIA_DPA_CONNECT_STATUS WIA_DPA_FIRST + 1
- #define WIA_DPA_DEVICE_TIME WIA_DPA_FIRST + 2
- #define WIA_DPA_LAST WIA_DPA_FIRST + 3
- #define WIA_DPA_FIRMWARE_VERSION_STR L"Firmware Version"
- #define WIA_DPA_CONNECT_STATUS_STR L"Connect Status"
- #define WIA_DPA_DEVICE_TIME_STR L"Device Time"
- #define WIA_NUM_DPA (1 + WIA_DPA_LAST - WIA_DPA_FIRST)
- //
- // Camera device properties
- //
- #define WIA_DPC_FIRST WIA_DPA_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_DPC_PICTURES_TAKEN WIA_DPC_FIRST + 0
- #define WIA_DPC_PICTURES_REMAINING WIA_DPC_FIRST + 1
- #define WIA_DPC_EXPOSURE_MODE WIA_DPC_FIRST + 2
- #define WIA_DPC_EXPOSURE_COMP WIA_DPC_FIRST + 3
- #define WIA_DPC_EXPOSURE_TIME WIA_DPC_FIRST + 4
- #define WIA_DPC_FNUMBER WIA_DPC_FIRST + 5
- #define WIA_DPC_FLASH_MODE WIA_DPC_FIRST + 6
- #define WIA_DPC_FOCUS_MODE WIA_DPC_FIRST + 7
- #define WIA_DPC_FOCUS_MANUAL_DIST WIA_DPC_FIRST + 8
- #define WIA_DPC_ZOOM_POSITION WIA_DPC_FIRST + 9
- #define WIA_DPC_PAN_POSITION WIA_DPC_FIRST + 10
- #define WIA_DPC_TILT_POSITION WIA_DPC_FIRST + 11
- #define WIA_DPC_TIMER_MODE WIA_DPC_FIRST + 12
- #define WIA_DPC_TIMER_VALUE WIA_DPC_FIRST + 13
- #define WIA_DPC_POWER_MODE WIA_DPC_FIRST + 14
- #define WIA_DPC_BATTERY_STATUS WIA_DPC_FIRST + 15
- #define WIA_DPC_THUMB_WIDTH WIA_DPC_FIRST + 16
- #define WIA_DPC_THUMB_HEIGHT WIA_DPC_FIRST + 17
- #define WIA_DPC_PICT_WIDTH WIA_DPC_FIRST + 18
- #define WIA_DPC_PICT_HEIGHT WIA_DPC_FIRST + 19
- #define WIA_DPC_DIMENSION WIA_DPC_FIRST + 20
- #define WIA_DPC_COMPRESSION_SETTING WIA_DPC_FIRST + 21
- #define WIA_DPC_FOCUS_METERING WIA_DPC_FIRST + 22
- #define WIA_DPC_TIMELAPSE_INTERVAL WIA_DPC_FIRST + 23
- #define WIA_DPC_TIMELAPSE_NUMBER WIA_DPC_FIRST + 24
- #define WIA_DPC_BURST_INTERVAL WIA_DPC_FIRST + 25
- #define WIA_DPC_BURST_NUMBER WIA_DPC_FIRST + 26
- #define WIA_DPC_EFFECT_MODE WIA_DPC_FIRST + 27
- #define WIA_DPC_DIGITAL_ZOOM WIA_DPC_FIRST + 28
- #define WIA_DPC_SHARPNESS WIA_DPC_FIRST + 29
- #define WIA_DPC_CONTRAST WIA_DPC_FIRST + 30
- #define WIA_DPC_CAPTURE_MODE WIA_DPC_FIRST + 31
- #define WIA_DPC_CAPTURE_DELAY WIA_DPC_FIRST + 32
- #define WIA_DPC_EXPOSURE_INDEX WIA_DPC_FIRST + 33
- #define WIA_DPC_EXPOSURE_METERING_MODE WIA_DPC_FIRST + 34
- #define WIA_DPC_FOCUS_METERING_MODE WIA_DPC_FIRST + 35
- #define WIA_DPC_FOCUS_DISTANCE WIA_DPC_FIRST + 36
- #define WIA_DPC_FOCAL_LENGTH WIA_DPC_FIRST + 37
- #define WIA_DPC_RGB_GAIN WIA_DPC_FIRST + 38
- #define WIA_DPC_WHITE_BALANCE WIA_DPC_FIRST + 39
- #define WIA_DPC_UPLOAD_URL WIA_DPC_FIRST + 40
- #define WIA_DPC_ARTIST WIA_DPC_FIRST + 41
- #define WIA_DPC_COPYRIGHT_INFO WIA_DPC_FIRST + 42
- #define WIA_DPC_LAST WIA_DPC_FIRST + 42
- #define WIA_DPC_PICTURES_TAKEN_STR L"Pictures Taken"
- #define WIA_DPC_PICTURES_REMAINING_STR L"Pictures Remaining"
- #define WIA_DPC_EXPOSURE_MODE_STR L"Exposure Mode"
- #define WIA_DPC_EXPOSURE_COMP_STR L"Exposure Compensation"
- #define WIA_DPC_EXPOSURE_TIME_STR L"Exposure Time"
- #define WIA_DPC_FNUMBER_STR L"F Number"
- #define WIA_DPC_FLASH_MODE_STR L"Flash Mode"
- #define WIA_DPC_FOCUS_MODE_STR L"Focus Mode"
- #define WIA_DPC_FOCUS_MANUAL_DIST_STR L"Focus Manual Dist"
- #define WIA_DPC_ZOOM_POSITION_STR L"Zoom Position"
- #define WIA_DPC_PAN_POSITION_STR L"Pan Position"
- #define WIA_DPC_TILT_POSITION_STR L"Tilt Position"
- #define WIA_DPC_TIMER_MODE_STR L"Timer Mode"
- #define WIA_DPC_TIMER_VALUE_STR L"Timer Value"
- #define WIA_DPC_POWER_MODE_STR L"Power Mode"
- #define WIA_DPC_BATTERY_STATUS_STR L"Battery Status"
- #define WIA_DPC_THUMB_WIDTH_STR L"Thumbnail Width"
- #define WIA_DPC_THUMB_HEIGHT_STR L"Thumbnail Height"
- #define WIA_DPC_PICT_WIDTH_STR L"Picture Width"
- #define WIA_DPC_PICT_HEIGHT_STR L"Picture Height"
- #define WIA_DPC_DIMENSION_STR L"Dimension"
- #define WIA_DPC_COMPRESSION_SETTING_STR L"Compression Setting"
- #define WIA_DPC_FOCUS_METERING_MODE_STR L"Focus Metering Mode"
- #define WIA_DPC_TIMELAPSE_INTERVAL_STR L"Timelapse Interval"
- #define WIA_DPC_TIMELAPSE_NUMBER_STR L"Timelapse Number"
- #define WIA_DPC_BURST_INTERVAL_STR L"Burst Interval"
- #define WIA_DPC_BURST_NUMBER_STR L"Burst Number"
- #define WIA_DPC_EFFECT_MODE_STR L"Effect Mode"
- #define WIA_DPC_DIGITAL_ZOOM_STR L"Digital Zoom"
- #define WIA_DPC_SHARPNESS_STR L"Sharpness"
- #define WIA_DPC_CONTRAST_STR L"Contrast"
- #define WIA_DPC_CAPTURE_MODE_STR L"Capture Mode"
- #define WIA_DPC_CAPTURE_DELAY_STR L"Capture Delay"
- #define WIA_DPC_EXPOSURE_INDEX_STR L"Exposure Index"
- #define WIA_DPC_EXPOSURE_METERING_MODE_STR L"Exposure Metering Mode"
- #define WIA_DPC_FOCUS_DISTANCE_STR L"Focus Distance"
- #define WIA_DPC_FOCAL_LENGTH_STR L"Focus Length"
- #define WIA_DPC_RGB_GAIN_STR L"RGB Gain"
- #define WIA_DPC_WHITE_BALANCE_STR L"White Balance"
- #define WIA_DPC_UPLOAD_URL_STR L"Upload URL"
- #define WIA_DPC_ARTIST_STR L"Artist"
- #define WIA_DPC_COPYRIGHT_INFO_STR L"Copyright Info"
- #define WIA_NUM_DPC (1 + WIA_DPC_LAST - WIA_DPC_FIRST)
- //
- // Scanner device properties
- //
- #define WIA_DPS_FIRST WIA_DPC_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_DPS_HORIZONTAL_BED_SIZE WIA_DPS_FIRST + 0
- #define WIA_DPS_VERTICAL_BED_SIZE WIA_DPS_FIRST + 1
- #define WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE WIA_DPS_FIRST + 2
- #define WIA_DPS_VERTICAL_SHEET_FEED_SIZE WIA_DPS_FIRST + 3
- #define WIA_DPS_SHEET_FEEDER_REGISTRATION WIA_DPS_FIRST + 4
- #define WIA_DPS_HORIZONTAL_BED_REGISTRATION WIA_DPS_FIRST + 5
- #define WIA_DPS_VERTICAL_BED_REGISTRATION WIA_DPS_FIRST + 6
- #define WIA_DPS_PLATEN_COLOR WIA_DPS_FIRST + 7
- #define WIA_DPS_PAD_COLOR WIA_DPS_FIRST + 8
- #define WIA_DPS_FILTER_SELECT WIA_DPS_FIRST + 9
- #define WIA_DPS_DITHER_SELECT WIA_DPS_FIRST + 10
- #define WIA_DPS_DITHER_PATTERN_DATA WIA_DPS_FIRST + 11
- #define WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES WIA_DPS_FIRST + 12
- #define WIA_DPS_DOCUMENT_HANDLING_STATUS WIA_DPS_FIRST + 13
- #define WIA_DPS_DOCUMENT_HANDLING_SELECT WIA_DPS_FIRST + 14
- #define WIA_DPS_DOCUMENT_HANDLING_CAPACITY WIA_DPS_FIRST + 15
- #define WIA_DPS_OPTICAL_XRES WIA_DPS_FIRST + 16
- #define WIA_DPS_OPTICAL_YRES WIA_DPS_FIRST + 17
- #define WIA_DPS_ENDORSER_CHARACTERS WIA_DPS_FIRST + 18
- #define WIA_DPS_ENDORSER_STRING WIA_DPS_FIRST + 19
- #define WIA_DPS_SCAN_AHEAD_PAGES WIA_DPS_FIRST + 20
- #define WIA_DPS_MAX_SCAN_TIME WIA_DPS_FIRST + 21
- #define WIA_DPS_PAGES WIA_DPS_FIRST + 22
- #define WIA_DPS_PAGE_SIZE WIA_DPS_FIRST + 23
- #define WIA_DPS_PAGE_WIDTH WIA_DPS_FIRST + 24
- #define WIA_DPS_PAGE_HEIGHT WIA_DPS_FIRST + 25
- #define WIA_DPS_PREVIEW WIA_DPS_FIRST + 26
- #define WIA_DPS_TRANSPARENCY WIA_DPS_FIRST + 27
- #define WIA_DPS_TRANSPARENCY_SELECT WIA_DPS_FIRST + 28
- #define WIA_DPS_SHOW_PREVIEW_CONTROL WIA_DPS_FIRST + 29
- #define WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE WIA_DPS_FIRST + 30
- #define WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE WIA_DPS_FIRST + 31
- #define WIA_DPS_LAST WIA_DPS_FIRST + 31
- #define WIA_DPS_HORIZONTAL_BED_SIZE_STR L"Horizontal Bed Size"
- #define WIA_DPS_VERTICAL_BED_SIZE_STR L"Vertical Bed Size"
- #define WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE_STR L"Horizontal Sheet Feed Size"
- #define WIA_DPS_VERTICAL_SHEET_FEED_SIZE_STR L"Vertical Sheet Feed Size"
- #define WIA_DPS_SHEET_FEEDER_REGISTRATION_STR L"Sheet Feeder Registration"
- #define WIA_DPS_HORIZONTAL_BED_REGISTRATION_STR L"Horizontal Bed Registration"
- #define WIA_DPS_VERTICAL_BED_REGISTRATION_STR L"Vertical Bed Registration"
- #define WIA_DPS_PLATEN_COLOR_STR L"Platen Color"
- #define WIA_DPS_PAD_COLOR_STR L"Pad Color"
- #define WIA_DPS_FILTER_SELECT_STR L"Filter Select"
- #define WIA_DPS_DITHER_SELECT_STR L"Dither Select"
- #define WIA_DPS_DITHER_PATTERN_DATA_STR L"Dither Pattern Data"
- #define WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES_STR L"Document Handling Capabilities"
- #define WIA_DPS_DOCUMENT_HANDLING_STATUS_STR L"Document Handling Status"
- #define WIA_DPS_DOCUMENT_HANDLING_SELECT_STR L"Document Handling Select"
- #define WIA_DPS_DOCUMENT_HANDLING_CAPACITY_STR L"Document Handling Capacity"
- #define WIA_DPS_OPTICAL_XRES_STR L"Horizontal Optical Resolution"
- #define WIA_DPS_OPTICAL_YRES_STR L"Vertical Optical Resolution"
- #define WIA_DPS_ENDORSER_CHARACTERS_STR L"Endorser Characters"
- #define WIA_DPS_ENDORSER_STRING_STR L"Endorser String"
- #define WIA_DPS_SCAN_AHEAD_PAGES_STR L"Scan Ahead Pages"
- #define WIA_DPS_MAX_SCAN_TIME_STR L"Max Scan Time"
- #define WIA_DPS_PAGES_STR L"Pages"
- #define WIA_DPS_PAGE_SIZE_STR L"Page Size"
- #define WIA_DPS_PAGE_WIDTH_STR L"Page Width"
- #define WIA_DPS_PAGE_HEIGHT_STR L"Page Height"
- #define WIA_DPS_PREVIEW_STR L"Preview"
- #define WIA_DPS_TRANSPARENCY_STR L"Transparency Adapter"
- #define WIA_DPS_TRANSPARENCY_SELECT_STR L"Transparency Adapter Select"
- #define WIA_DPS_SHOW_PREVIEW_CONTROL_STR L"Show preview control"
- #define WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE_STR L"Minimum Horizontal Sheet Feed Size"
- #define WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE_STR L"Minimum Vertical Sheet Feed Size"
- #define WIA_NUM_DPS (1 + WIA_DPS_LAST - WIA_DPS_FIRST)
- //
- // File System Properties
- //
- #define WIA_DPF_FIRST WIA_DPS_FIRST + WIA_RESERVED_FOR_SMALL_NEW_PROPS
- #define WIA_DPF_MOUNT_POINT WIA_DPF_FIRST + 0
- #define WIA_DPF_LAST WIA_DPF_FIRST + 0
- #define WIA_DPF_MOUNT_POINT_STR L"Directory mount point"
- #define WIA_NUM_DPF (1 + WIA_DPF_LAST - WIA_DPF_FIRST)
- //
- // Video Camera properties.
- //
- //
- #define WIA_DPV_FIRST WIA_DPF_FIRST + WIA_RESERVED_FOR_SMALL_NEW_PROPS
- #define WIA_DPV_LAST_PICTURE_TAKEN WIA_DPV_FIRST + 0
- #define WIA_DPV_IMAGES_DIRECTORY WIA_DPV_FIRST + 1
- #define WIA_DPV_DSHOW_DEVICE_PATH WIA_DPV_FIRST + 2
- #define WIA_DPV_LAST WIA_DPV_FIRST + 2
- #define WIA_DPV_LAST_PICTURE_TAKEN_STR L"Last Picture Taken"
- #define WIA_DPV_IMAGES_DIRECTORY_STR L"Images Directory"
- #define WIA_DPV_DSHOW_DEVICE_PATH_STR L"Directshow Device Path"
- #define WIA_NUM_DPV (1 + WIA_DPV_LAST - WIA_DPV_FIRST)
- //
- // Common item properties
- //
- #define WIA_IPA_FIRST WIA_DPS_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_IPA_ITEM_NAME WIA_IPA_FIRST + 0
- #define WIA_IPA_FULL_ITEM_NAME WIA_IPA_FIRST + 1
- #define WIA_IPA_ITEM_TIME WIA_IPA_FIRST + 2
- #define WIA_IPA_ITEM_FLAGS WIA_IPA_FIRST + 3
- #define WIA_IPA_ACCESS_RIGHTS WIA_IPA_FIRST + 4
- #define WIA_IPA_DATATYPE WIA_IPA_FIRST + 5
- #define WIA_IPA_DEPTH WIA_IPA_FIRST + 6
- #define WIA_IPA_PREFERRED_FORMAT WIA_IPA_FIRST + 7
- #define WIA_IPA_FORMAT WIA_IPA_FIRST + 8
- #define WIA_IPA_COMPRESSION WIA_IPA_FIRST + 9
- #define WIA_IPA_TYMED WIA_IPA_FIRST + 10
- #define WIA_IPA_CHANNELS_PER_PIXEL WIA_IPA_FIRST + 11
- #define WIA_IPA_BITS_PER_CHANNEL WIA_IPA_FIRST + 12
- #define WIA_IPA_PLANAR WIA_IPA_FIRST + 13
- #define WIA_IPA_PIXELS_PER_LINE WIA_IPA_FIRST + 14
- #define WIA_IPA_BYTES_PER_LINE WIA_IPA_FIRST + 15
- #define WIA_IPA_NUMBER_OF_LINES WIA_IPA_FIRST + 16
- #define WIA_IPA_GAMMA_CURVES WIA_IPA_FIRST + 17
- #define WIA_IPA_ITEM_SIZE WIA_IPA_FIRST + 18
- #define WIA_IPA_COLOR_PROFILE WIA_IPA_FIRST + 19
- #define WIA_IPA_MIN_BUFFER_SIZE WIA_IPA_FIRST + 20
- // Note: BUFFER_SIZE and MIN_BUFFER_SIZE have the same propids
- #define WIA_IPA_BUFFER_SIZE WIA_IPA_FIRST + 20
- #define WIA_IPA_REGION_TYPE WIA_IPA_FIRST + 21
- #define WIA_IPA_ICM_PROFILE_NAME WIA_IPA_FIRST + 22
- #define WIA_IPA_APP_COLOR_MAPPING WIA_IPA_FIRST + 23
- #define WIA_IPA_PROP_STREAM_COMPAT_ID WIA_IPA_FIRST + 24
- #define WIA_IPA_FILENAME_EXTENSION WIA_IPA_FIRST + 25
- #define WIA_IPA_SUPPRESS_PROPERTY_PAGE WIA_IPA_FIRST + 26
- #define WIA_IPA_LAST WIA_IPA_FIRST + 26
- #define WIA_IPA_ITEM_NAME_STR L"Item Name"
- #define WIA_IPA_FULL_ITEM_NAME_STR L"Full Item Name"
- #define WIA_IPA_ITEM_TIME_STR L"Item Time Stamp"
- #define WIA_IPA_ITEM_FLAGS_STR L"Item Flags"
- #define WIA_IPA_ACCESS_RIGHTS_STR L"Access Rights"
- #define WIA_IPA_DATATYPE_STR L"Data Type"
- #define WIA_IPA_DEPTH_STR L"Bits Per Pixel"
- #define WIA_IPA_PREFERRED_FORMAT_STR L"Preferred Format"
- #define WIA_IPA_FORMAT_STR L"Format"
- #define WIA_IPA_COMPRESSION_STR L"Compression"
- #define WIA_IPA_TYMED_STR L"Media Type"
- #define WIA_IPA_CHANNELS_PER_PIXEL_STR L"Channels Per Pixel"
- #define WIA_IPA_BITS_PER_CHANNEL_STR L"Bits Per Channel"
- #define WIA_IPA_PLANAR_STR L"Planar"
- #define WIA_IPA_PIXELS_PER_LINE_STR L"Pixels Per Line"
- #define WIA_IPA_BYTES_PER_LINE_STR L"Bytes Per Line"
- #define WIA_IPA_NUMBER_OF_LINES_STR L"Number of Lines"
- #define WIA_IPA_GAMMA_CURVES_STR L"Gamma Curves"
- #define WIA_IPA_ITEM_SIZE_STR L"Item Size"
- #define WIA_IPA_COLOR_PROFILE_STR L"Color Profiles"
- #define WIA_IPA_MIN_BUFFER_SIZE_STR L"Buffer Size"
- #define WIA_IPA_REGION_TYPE_STR L"Region Type"
- #define WIA_IPA_ICM_PROFILE_NAME_STR L"Color Profile Name"
- #define WIA_IPA_APP_COLOR_MAPPING_STR L"Application Applies Color Mapping"
- #define WIA_IPA_PROP_STREAM_COMPAT_ID_STR L"Stream Compatibility ID"
- #define WIA_IPA_FILENAME_EXTENSION_STR L"Filename extension"
- #define WIA_IPA_SUPPRESS_PROPERTY_PAGE_STR L"Suppress a property page"
- #define WIA_NUM_IPA (1 + WIA_IPA_LAST - WIA_IPA_FIRST)
- //
- // Camera item properties
- //
- #define WIA_IPC_FIRST WIA_IPA_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_IPC_THUMBNAIL WIA_IPC_FIRST + 0
- #define WIA_IPC_THUMB_WIDTH WIA_IPC_FIRST + 1
- #define WIA_IPC_THUMB_HEIGHT WIA_IPC_FIRST + 2
- #define WIA_IPC_AUDIO_AVAILABLE WIA_IPC_FIRST + 3
- #define WIA_IPC_AUDIO_DATA_FORMAT WIA_IPC_FIRST + 4
- #define WIA_IPC_AUDIO_DATA WIA_IPC_FIRST + 5
- #define WIA_IPC_NUM_PICT_PER_ROW WIA_IPC_FIRST + 6
- #define WIA_IPC_SEQUENCE WIA_IPC_FIRST + 7
- #define WIA_IPC_TIMEDELAY WIA_IPC_FIRST + 8
- #define WIA_IPC_LAST WIA_IPC_FIRST + 8
- #define WIA_IPC_THUMBNAIL_STR L"Thumbnail Data"
- #define WIA_IPC_THUMB_WIDTH_STR L"Thumbnail Width"
- #define WIA_IPC_THUMB_HEIGHT_STR L"Thumbnail Height"
- #define WIA_IPC_AUDIO_AVAILABLE_STR L"Audio Available"
- #define WIA_IPC_AUDIO_DATA_FORMAT_STR L"Audio Format"
- #define WIA_IPC_AUDIO_DATA_STR L"Audio Data"
- #define WIA_IPC_NUM_PICT_PER_ROW_STR L"Pictures per Row"
- #define WIA_IPC_SEQUENCE_STR L"Sequence Number"
- #define WIA_IPC_TIMEDELAY_STR L"Time Delay"
- #define WIA_NUM_IPC (1 + WIA_IPC_LAST - WIA_IPC_FIRST)
- //
- // Scanner item properties
- //
- #define WIA_IPS_FIRST WIA_IPC_FIRST + WIA_RESERVED_FOR_NEW_PROPS
- #define WIA_IPS_CUR_INTENT WIA_IPS_FIRST + 0
- #define WIA_IPS_XRES WIA_IPS_FIRST + 1
- #define WIA_IPS_YRES WIA_IPS_FIRST + 2
- #define WIA_IPS_XPOS WIA_IPS_FIRST + 3
- #define WIA_IPS_YPOS WIA_IPS_FIRST + 4
- #define WIA_IPS_XEXTENT WIA_IPS_FIRST + 5
- #define WIA_IPS_YEXTENT WIA_IPS_FIRST + 6
- #define WIA_IPS_PHOTOMETRIC_INTERP WIA_IPS_FIRST + 7
- #define WIA_IPS_BRIGHTNESS WIA_IPS_FIRST + 8
- #define WIA_IPS_CONTRAST WIA_IPS_FIRST + 9
- #define WIA_IPS_ORIENTATION WIA_IPS_FIRST + 10
- #define WIA_IPS_ROTATION WIA_IPS_FIRST + 11
- #define WIA_IPS_MIRROR WIA_IPS_FIRST + 12
- #define WIA_IPS_THRESHOLD WIA_IPS_FIRST + 13
- #define WIA_IPS_INVERT WIA_IPS_FIRST + 14
- #define WIA_IPS_WARM_UP_TIME WIA_IPS_FIRST + 15
- #define WIA_IPS_LAST WIA_IPS_FIRST + 15
- #define WIA_IPS_CUR_INTENT_STR L"Current Intent"
- #define WIA_IPS_XRES_STR L"Horizontal Resolution"
- #define WIA_IPS_YRES_STR L"Vertical Resolution"
- #define WIA_IPS_XPOS_STR L"Horizontal Start Position"
- #define WIA_IPS_YPOS_STR L"Vertical Start Position"
- #define WIA_IPS_XEXTENT_STR L"Horizontal Extent"
- #define WIA_IPS_YEXTENT_STR L"Vertical Extent"
- #define WIA_IPS_PHOTOMETRIC_INTERP_STR L"Photometric Interpretation"
- #define WIA_IPS_BRIGHTNESS_STR L"Brightness"
- #define WIA_IPS_CONTRAST_STR L"Contrast"
- #define WIA_IPS_ORIENTATION_STR L"Orientation"
- #define WIA_IPS_ROTATION_STR L"Rotation"
- #define WIA_IPS_MIRROR_STR L"Mirror"
- #define WIA_IPS_THRESHOLD_STR L"Threshold"
- #define WIA_IPS_INVERT_STR L"Invert"
- #define WIA_IPS_WARM_UP_TIME_STR L"Lamp Warm up Time"
- #define WIA_NUM_IPS (1 + WIA_IPS_LAST - WIA_IPS_FIRST)
- //**************************************************************************
- //
- // Vendor defined property area
- //
- //**************************************************************************
- #define WIA_PRIVATE_DEVPROP (WIA_IPS_FIRST + WIA_RESERVED_FOR_ALL_MS_PROPS)
- #define WIA_PRIVATE_ITEMPROP (WIA_PRIVATE_DEVPROP + WIA_RESERVED_FOR_ALL_MS_PROPS)
- //**************************************************************************
- //
- // WIA Property Constants
- //
- //**************************************************************************
- //
- // WIA_DPC_WHITE_BALANCE constants
- //
- #define WHITEBALANCE_MANUAL 1
- #define WHITEBALANCE_AUTO 2
- #define WHITEBALANCE_ONEPUSH_AUTO 3
- #define WHITEBALANCE_DAYLIGHT 4
- #define WHITEBALANCE_FLORESCENT 5
- #define WHITEBALANCE_TUNGSTEN 6
- #define WHITEBALANCE_FLASH 7
- //
- // WIA_DPC_FOCUS_MODE constants
- //
- #define FOCUSMODE_MANUAL 1
- #define FOCUSMODE_AUTO 2
- #define FOCUSMODE_MACROAUTO 3
- //
- // WIA_DPC_EXPOSURE_METERING_MODE constants
- //
- #define EXPOSUREMETERING_AVERAGE 1
- #define EXPOSUREMETERING_CENTERWEIGHT 2
- #define EXPOSUREMETERING_MULTISPOT 3
- #define EXPOSUREMETERING_CENTERSPOT 4
- //
- // WIA_DPC_FLASH_MODE constants
- //
- #define FLASHMODE_AUTO 1
- #define FLASHMODE_OFF 2
- #define FLASHMODE_FILL 3
- #define FLASHMODE_REDEYE_AUTO 4
- #define FLASHMODE_REDEYE_FILL 5
- #define FLASHMODE_EXTERNALSYNC 6
- //
- // WIA_DPC_EXPOSURE_MODE constants
- //
- #define EXPOSUREMODE_MANUAL 1
- #define EXPOSUREMODE_AUTO 2
- #define EXPOSUREMODE_APERTURE_PRIORITY 3
- #define EXPOSUREMODE_SHUTTER_PRIORITY 4
- #define EXPOSUREMODE_PROGRAM_CREATIVE 5
- #define EXPOSUREMODE_PROGRAM_ACTION 6
- #define EXPOSUREMODE_PORTRAIT 7
- //
- // WIA_DPC_CAPTURE_MODE constants
- //
- #define CAPTUREMODE_NORMAL 1
- #define CAPTUREMODE_BURST 2
- #define CAPTUREMODE_TIMELAPSE 3
- //
- // WIA_DPC_EFFECT_MODE constants
- //
- #define EFFECTMODE_STANDARD 1
- #define EFFECTMODE_BW 2
- #define EFFECTMODE_SEPIA 3
- //
- // WIA_DPC_FOCUS_METERING_MODE constants
- //
- #define FOCUSMETERING_CENTERSPOT 1
- #define FOCUSMETERING_MULTISPOT 2
- //
- // WIA_DPC_POWER_MODE constants
- //
- #define POWERMODE_LINE 1
- #define POWERMODE_BATTERY 2
- //
- // WIA_DPS_SHEET_FEEDER_REGISTRATION and
- // WIA_DPS_HORIZONTAL_BED_REGISTRATION constants
- //
- #define LEFT_JUSTIFIED 0
- #define CENTERED 1
- #define RIGHT_JUSTIFIED 2
- //
- // WIA_DPS_VERTICAL_BED_REGISTRATION constants
- //
- #define TOP_JUSTIFIED 0
- #define CENTERED 1
- #define BOTTOM_JUSTIFIED 2
- //
- // WIA_DPS_ORIENTATION and WIA_DPS_ROTATION constants
- //
- #define PORTRAIT 0
- #define LANSCAPE 1
- #define ROT180 2
- #define ROT270 3
- //
- // WIA_DPS_MIRROR flags
- //
- #define MIRRORED 0x01
- //
- // WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES flags
- //
- #define FEED 0x01
- #define FLAT 0x02
- #define DUP 0x04
- #define DETECT_FLAT 0x08
- #define DETECT_SCAN 0x10
- #define DETECT_FEED 0x20
- #define DETECT_DUP 0x40
- #define DETECT_FEED_AVAIL 0x80
- #define DETECT_DUP_AVAIL 0x100
- //
- // WIA_DPS_DOCUMENT_HANDLING_STATUS flags
- //
- #define FEED_READY 0x01
- #define FLAT_READY 0x02
- #define DUP_READY 0x04
- #define FLAT_COVER_UP 0x08
- #define PATH_COVER_UP 0x10
- #define PAPER_JAM 0x20
- //
- // WIA_DPS_DOCUMENT_HANDLING_SELECT flags
- //
- #define FEEDER 0x001
- #define FLATBED 0x002
- #define DUPLEX 0x004
- #define FRONT_FIRST 0x008
- #define BACK_FIRST 0x010
- #define FRONT_ONLY 0x020
- #define BACK_ONLY 0x040
- #define NEXT_PAGE 0x080
- #define PREFEED 0x100
- #define AUTO_ADVANCE 0x200
- //
- // WIA_DPS_TRANSPARENCY flags
- //
- #define LIGHT_SOURCE_PRESENT_DETECT 0x01
- #define LIGHT_SOURCE_PRESENT 0x02
- #define LIGHT_SOURCE_DETECT_READY 0x04
- #define LIGHT_SOURCE_READY 0x08
- //
- // WIA_DPS_TRANSPARENCY_SELECT flags
- //
- #define LIGHT_SOURCE_SELECT 0x001
- //
- // WIA_DPS_SCAN_AHEAD_PAGES constants
- //
- #define WIA_SCAN_AHEAD_ALL 0
- //
- // WIA_DPS_PAGES constants
- //
- #define ALL_PAGES 0
- //
- // WIA_DPS_PREVIEW constants
- //
- #define WIA_FINAL_SCAN 0
- #define WIA_PREVIEW_SCAN 1
- //
- // WIA_DPS_SHOW_PREVIEW_CONTROL constants
- //
- #define WIA_SHOW_PREVIEW_CONTROL 0
- #define WIA_DONT_SHOW_PREVIEW_CONTROL 1
- //
- // Predefined strings for WIA_DPS_ENDORSER_STRING
- //
- #define WIA_ENDORSER_TOK_DATE L"$DATE$"
- #define WIA_ENDORSER_TOK_TIME L"$TIME$"
- #define WIA_ENDORSER_TOK_PAGE_COUNT L"$PAGE_COUNT$"
- #define WIA_ENDORSER_TOK_DAY L"$DAY$"
- #define WIA_ENDORSER_TOK_MONTH L"$MONTH$"
- #define WIA_ENDORSER_TOK_YEAR L"$YEAR$"
- //
- // WIA_DPS_PAGE_SIZE constants
- //
- #define WIA_PAGE_A4 0
- #define WIA_PAGE_LETTER 1
- #define WIA_PAGE_CUSTOM 2
- //
- // WIA_IPA_COMPRESSION constants
- //
- #define WIA_COMPRESSION_NONE 0
- #define WIA_COMPRESSION_BI_RLE4 1
- #define WIA_COMPRESSION_BI_RLE8 2
- #define WIA_COMPRESSION_G3 3
- #define WIA_COMPRESSION_G4 4
- #define WIA_COMPRESSION_JPEG 5
- //
- // WIA_IPA_PLANAR constants
- //
- #define WIA_PACKED_PIXEL 0
- #define WIA_PLANAR 1
- //
- // WIA_IPA_DATATYPE constants
- //
- #define WIA_DATA_THRESHOLD 0
- #define WIA_DATA_DITHER 1
- #define WIA_DATA_GRAYSCALE 2
- #define WIA_DATA_COLOR 3
- #define WIA_DATA_COLOR_THRESHOLD 4
- #define WIA_DATA_COLOR_DITHER 5
- //
- // WIA_IPA_SUPPRESS_PROPERTY_PAGE flags
- //
- #define WIA_PROPPAGE_SCANNER_ITEM_GENERAL 0x00000001
- #define WIA_PROPPAGE_CAMERA_ITEM_GENERAL 0x00000002
- //
- // WIA_IPS_CUR_INTENT flags
- //
- #define WIA_INTENT_NONE 0x00000000
- #define WIA_INTENT_IMAGE_TYPE_COLOR 0x00000001
- #define WIA_INTENT_IMAGE_TYPE_GRAYSCALE 0x00000002
- #define WIA_INTENT_IMAGE_TYPE_TEXT 0x00000004
- #define WIA_INTENT_IMAGE_TYPE_MASK 0x0000000F
- #define WIA_INTENT_MINIMIZE_SIZE 0x00010000
- #define WIA_INTENT_MAXIMIZE_QUALITY 0x00020000
- #define WIA_INTENT_BEST_PREVIEW 0x00040000
- #define WIA_INTENT_SIZE_MASK 0x000F0000
- //
- // WIA_IPS_PHOTOMETRIC_INTERP constants
- //
- #define WIA_PHOTO_WHITE_1 0 // default, white is 1, black is 0
- #define WIA_PHOTO_WHITE_0 1 // default, white is 0, black is 1
- //**************************************************************************
- //
- // WIA Extended Property Identifiers
- //
- //**************************************************************************
- #define WIA_RANGE_MIN 0
- #define WIA_RANGE_NOM 1
- #define WIA_RANGE_MAX 2
- #define WIA_RANGE_STEP 3
- #define WIA_RANGE_NUM_ELEMS 4
- #define WIA_LIST_COUNT 0
- #define WIA_LIST_NOM 1
- #define WIA_LIST_VALUES 2
- #define WIA_LIST_NUM_ELEMS 2
- #define WIA_FLAG_NOM 0
- #define WIA_FLAG_VALUES 1
- #define WIA_FLAG_NUM_ELEMS 2
- //**************************************************************************
- //
- // Property id to string mapping
- //
- //**************************************************************************
- #ifdef DEFINE_WIA_PROPID_TO_NAME
- WIA_PROPID_TO_NAME g_wiaPropIdToName[] =
- {
- {WIA_DIP_DEV_ID, WIA_DIP_DEV_ID_STR},
- {WIA_DIP_VEND_DESC, WIA_DIP_VEND_DESC_STR},
- {WIA_DIP_DEV_DESC, WIA_DIP_DEV_DESC_STR},
- {WIA_DIP_DEV_TYPE, WIA_DIP_DEV_TYPE_STR},
- {WIA_DIP_PORT_NAME, WIA_DIP_PORT_NAME_STR},
- {WIA_DIP_DEV_NAME, WIA_DIP_DEV_NAME_STR},
- {WIA_DIP_SERVER_NAME, WIA_DIP_SERVER_NAME_STR},
- {WIA_DIP_REMOTE_DEV_ID, WIA_DIP_REMOTE_DEV_ID_STR},
- {WIA_DIP_UI_CLSID, WIA_DIP_UI_CLSID_STR},
- {WIA_DIP_HW_CONFIG, WIA_DIP_HW_CONFIG_STR},
- {WIA_DIP_BAUDRATE, WIA_DIP_BAUDRATE_STR},
- {WIA_DIP_STI_GEN_CAPABILITIES, WIA_DIP_STI_GEN_CAPABILITIES_STR},
- {WIA_DIP_WIA_VERSION, WIA_DIP_WIA_VERSION_STR},
- {WIA_DIP_DRIVER_VERSION, WIA_DIP_DRIVER_VERSION_STR},
- {WIA_DPA_FIRMWARE_VERSION, WIA_DPA_FIRMWARE_VERSION_STR},
- {WIA_DPA_CONNECT_STATUS, WIA_DPA_CONNECT_STATUS_STR},
- {WIA_DPA_DEVICE_TIME, WIA_DPA_DEVICE_TIME_STR},
- {WIA_DPC_PICTURES_TAKEN, WIA_DPC_PICTURES_TAKEN_STR},
- {WIA_DPC_PICTURES_REMAINING, WIA_DPC_PICTURES_REMAINING_STR},
- {WIA_DPC_EXPOSURE_MODE, WIA_DPC_EXPOSURE_MODE_STR},
- {WIA_DPC_EXPOSURE_COMP, WIA_DPC_EXPOSURE_COMP_STR},
- {WIA_DPC_EXPOSURE_TIME, WIA_DPC_EXPOSURE_TIME_STR},
- {WIA_DPC_FNUMBER, WIA_DPC_FNUMBER_STR},
- {WIA_DPC_FLASH_MODE, WIA_DPC_FLASH_MODE_STR},
- {WIA_DPC_FOCUS_MODE, WIA_DPC_FOCUS_MODE_STR},
- {WIA_DPC_FOCUS_MANUAL_DIST, WIA_DPC_FOCUS_MANUAL_DIST_STR},
- {WIA_DPC_ZOOM_POSITION, WIA_DPC_ZOOM_POSITION_STR},
- {WIA_DPC_PAN_POSITION, WIA_DPC_PAN_POSITION_STR},
- {WIA_DPC_TILT_POSITION, WIA_DPC_TILT_POSITION_STR},
- {WIA_DPC_TIMER_MODE, WIA_DPC_TIMER_MODE_STR},
- {WIA_DPC_TIMER_VALUE, WIA_DPC_TIMER_VALUE_STR},
- {WIA_DPC_POWER_MODE, WIA_DPC_POWER_MODE_STR},
- {WIA_DPC_BATTERY_STATUS, WIA_DPC_BATTERY_STATUS_STR},
- {WIA_DPC_DIMENSION, WIA_DPC_DIMENSION_STR},
- {WIA_DPS_HORIZONTAL_BED_SIZE, WIA_DPS_HORIZONTAL_BED_SIZE_STR},
- {WIA_DPS_VERTICAL_BED_SIZE, WIA_DPS_VERTICAL_BED_SIZE_STR},
- {WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE, WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE_STR},
- {WIA_DPS_VERTICAL_SHEET_FEED_SIZE, WIA_DPS_VERTICAL_SHEET_FEED_SIZE_STR},
- {WIA_DPS_SHEET_FEEDER_REGISTRATION, WIA_DPS_SHEET_FEEDER_REGISTRATION_STR},
- {WIA_DPS_HORIZONTAL_BED_REGISTRATION, WIA_DPS_HORIZONTAL_BED_REGISTRATION_STR},
- {WIA_DPS_VERTICAL_BED_REGISTRATION, WIA_DPS_VERTICAL_BED_REGISTRATION_STR},
- {WIA_DPS_PLATEN_COLOR, WIA_DPS_PLATEN_COLOR_STR},
- {WIA_DPS_PAD_COLOR, WIA_DPS_PAD_COLOR_STR},
- {WIA_DPS_FILTER_SELECT, WIA_DPS_FILTER_SELECT_STR},
- {WIA_DPS_DITHER_SELECT, WIA_DPS_DITHER_SELECT_STR},
- {WIA_DPS_DITHER_PATTERN_DATA, WIA_DPS_DITHER_PATTERN_DATA_STR},
- {WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES, WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES_STR},
- {WIA_DPS_DOCUMENT_HANDLING_STATUS, WIA_DPS_DOCUMENT_HANDLING_STATUS_STR},
- {WIA_DPS_DOCUMENT_HANDLING_SELECT, WIA_DPS_DOCUMENT_HANDLING_SELECT_STR},
- {WIA_DPS_DOCUMENT_HANDLING_CAPACITY, WIA_DPS_DOCUMENT_HANDLING_CAPACITY_STR},
- {WIA_DPS_OPTICAL_XRES, WIA_DPS_OPTICAL_XRES_STR},
- {WIA_DPS_OPTICAL_YRES, WIA_DPS_OPTICAL_YRES_STR},
- {WIA_DPS_ENDORSER_CHARACTERS, WIA_DPS_ENDORSER_CHARACTERS_STR},
- {WIA_DPS_ENDORSER_STRING, WIA_DPS_ENDORSER_STRING_STR},
- {WIA_DPS_SCAN_AHEAD_PAGES, WIA_DPS_SCAN_AHEAD_PAGES_STR},
- {WIA_DPS_MAX_SCAN_TIME, WIA_DPS_MAX_SCAN_TIME_STR},
- {WIA_DPS_PAGES, WIA_DPS_PAGES_STR},
- {WIA_DPS_PAGE_SIZE, WIA_DPS_PAGE_SIZE_STR},
- {WIA_DPS_PAGE_WIDTH, WIA_DPS_PAGE_WIDTH_STR},
- {WIA_DPS_PAGE_HEIGHT, WIA_DPS_PAGE_HEIGHT_STR},
- {WIA_DPS_PREVIEW, WIA_DPS_PREVIEW_STR},
- {WIA_DPS_TRANSPARENCY, WIA_DPS_TRANSPARENCY_STR},
- {WIA_DPS_TRANSPARENCY_SELECT, WIA_DPS_TRANSPARENCY_SELECT_STR},
- {WIA_DPS_SHOW_PREVIEW_CONTROL, WIA_DPS_SHOW_PREVIEW_CONTROL_STR},
- {WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE, WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE_STR},
- {WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE, WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE_STR},
- {WIA_DPV_LAST_PICTURE_TAKEN, WIA_DPV_LAST_PICTURE_TAKEN_STR},
- {WIA_DPV_IMAGES_DIRECTORY, WIA_DPV_IMAGES_DIRECTORY_STR},
- {WIA_DPV_DSHOW_DEVICE_PATH, WIA_DPV_DSHOW_DEVICE_PATH_STR},
- {WIA_DPF_MOUNT_POINT, WIA_DPF_MOUNT_POINT_STR},
- {WIA_IPA_ITEM_NAME, WIA_IPA_ITEM_NAME_STR},
- {WIA_IPA_FULL_ITEM_NAME, WIA_IPA_FULL_ITEM_NAME_STR},
- {WIA_IPA_ITEM_TIME, WIA_IPA_ITEM_TIME_STR},
- {WIA_IPA_ITEM_FLAGS, WIA_IPA_ITEM_FLAGS_STR},
- {WIA_IPA_ACCESS_RIGHTS, WIA_IPA_ACCESS_RIGHTS_STR},
- {WIA_IPA_DATATYPE, WIA_IPA_DATATYPE_STR},
- {WIA_IPA_DEPTH, WIA_IPA_DEPTH_STR},
- {WIA_IPA_PREFERRED_FORMAT, WIA_IPA_PREFERRED_FORMAT_STR},
- {WIA_IPA_FORMAT, WIA_IPA_FORMAT_STR},
- {WIA_IPA_COMPRESSION, WIA_IPA_COMPRESSION_STR},
- {WIA_IPA_TYMED, WIA_IPA_TYMED_STR},
- {WIA_IPA_CHANNELS_PER_PIXEL, WIA_IPA_CHANNELS_PER_PIXEL_STR},
- {WIA_IPA_BITS_PER_CHANNEL, WIA_IPA_BITS_PER_CHANNEL_STR},
- {WIA_IPA_PLANAR, WIA_IPA_PLANAR_STR},
- {WIA_IPA_PIXELS_PER_LINE, WIA_IPA_PIXELS_PER_LINE_STR},
- {WIA_IPA_BYTES_PER_LINE, WIA_IPA_BYTES_PER_LINE_STR},
- {WIA_IPA_NUMBER_OF_LINES, WIA_IPA_NUMBER_OF_LINES_STR},
- {WIA_IPA_GAMMA_CURVES, WIA_IPA_GAMMA_CURVES_STR},
- {WIA_IPA_ITEM_SIZE, WIA_IPA_ITEM_SIZE_STR},
- {WIA_IPA_COLOR_PROFILE, WIA_IPA_COLOR_PROFILE_STR},
- {WIA_IPA_MIN_BUFFER_SIZE, WIA_IPA_MIN_BUFFER_SIZE_STR},
- {WIA_IPA_REGION_TYPE, WIA_IPA_REGION_TYPE_STR},
- {WIA_IPA_ICM_PROFILE_NAME, WIA_IPA_ICM_PROFILE_NAME_STR},
- {WIA_IPA_APP_COLOR_MAPPING, WIA_IPA_APP_COLOR_MAPPING_STR},
- {WIA_IPA_PROP_STREAM_COMPAT_ID, WIA_IPA_PROP_STREAM_COMPAT_ID_STR},
- {WIA_IPA_FILENAME_EXTENSION, WIA_IPA_FILENAME_EXTENSION_STR},
- {WIA_IPA_SUPPRESS_PROPERTY_PAGE, WIA_IPA_SUPPRESS_PROPERTY_PAGE_STR},
- {WIA_IPC_THUMBNAIL, WIA_IPC_THUMBNAIL_STR},
- {WIA_IPC_THUMB_WIDTH, WIA_IPC_THUMB_WIDTH_STR},
- {WIA_IPC_THUMB_HEIGHT, WIA_IPC_THUMB_HEIGHT_STR},
- {WIA_IPC_AUDIO_AVAILABLE, WIA_IPC_AUDIO_AVAILABLE_STR},
- {WIA_IPC_AUDIO_DATA_FORMAT, WIA_IPC_AUDIO_DATA_FORMAT_STR},
- {WIA_IPC_AUDIO_DATA, WIA_IPC_AUDIO_DATA_STR},
- {WIA_IPC_NUM_PICT_PER_ROW, WIA_IPC_NUM_PICT_PER_ROW_STR},
- {WIA_IPC_SEQUENCE, WIA_IPC_SEQUENCE_STR},
- {WIA_IPC_TIMEDELAY, WIA_IPC_TIMEDELAY_STR},
- {WIA_IPS_CUR_INTENT, WIA_IPS_CUR_INTENT_STR},
- {WIA_IPS_XRES, WIA_IPS_XRES_STR},
- {WIA_IPS_YRES, WIA_IPS_YRES_STR},
- {WIA_IPS_XPOS, WIA_IPS_XPOS_STR},
- {WIA_IPS_YPOS, WIA_IPS_YPOS_STR},
- {WIA_IPS_XEXTENT, WIA_IPS_XEXTENT_STR},
- {WIA_IPS_YEXTENT, WIA_IPS_YEXTENT_STR},
- {WIA_IPS_PHOTOMETRIC_INTERP, WIA_IPS_PHOTOMETRIC_INTERP_STR},
- {WIA_IPS_BRIGHTNESS, WIA_IPS_BRIGHTNESS_STR},
- {WIA_IPS_CONTRAST, WIA_IPS_CONTRAST_STR},
- {WIA_IPS_ORIENTATION, WIA_IPS_ORIENTATION_STR},
- {WIA_IPS_ROTATION, WIA_IPS_ROTATION_STR},
- {WIA_IPS_MIRROR, WIA_IPS_MIRROR_STR},
- {WIA_IPS_THRESHOLD, WIA_IPS_THRESHOLD_STR},
- {WIA_IPS_INVERT, WIA_IPS_INVERT_STR},
- {WIA_IPS_WARM_UP_TIME, WIA_IPS_WARM_UP_TIME_STR},
- {0, L"Not a WIA property"}
- };
- #else
- extern WIA_PROPID_TO_NAME g_wiaPropIdToName[];
- #endif
- #endif //WIAPROP_H_INCLUDED
- //
- // Macro Helpers
- //
- #define WIA_PROP_LIST_COUNT(ppv) (((PROPVARIANT*)ppv)->cal.cElems - WIA_LIST_VALUES)
- #define WIA_PROP_LIST_VALUE(ppv, index) \
- ((index > ((PROPVARIANT*) ppv)->cal.cElems - WIA_LIST_VALUES) || (index < -WIA_LIST_NOM)) ?\
- NULL : \
- (((PROPVARIANT*) ppv)->vt == VT_UI1) ? \
- ((PROPVARIANT*) ppv)->caub.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_UI2) ? \
- ((PROPVARIANT*) ppv)->caui.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_UI4) ? \
- ((PROPVARIANT*) ppv)->caul.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_I2) ? \
- ((PROPVARIANT*) ppv)->cai.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_I4) ? \
- ((PROPVARIANT*) ppv)->cal.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_R4) ? \
- ((PROPVARIANT*) ppv)->caflt.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_R8) ? \
- ((PROPVARIANT*) ppv)->cadbl.pElems[WIA_LIST_VALUES + index] : \
- (((PROPVARIANT*) ppv)->vt == VT_BSTR) ? \
- (LONG)(((PROPVARIANT*) ppv)->cabstr.pElems[WIA_LIST_VALUES + index]) : \
- NULL
- //
- // End of Macro Helpers
- //
- #ifdef __cplusplus
- };
- #endif
- //
- // Reset packing
- //
- #include <poppack.h>
- #endif // _WIADEF_H_