亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? stiusd.h

?? 美國國家半導體公司的掃描儀芯片LM9833的驅(qū)動程序。
?? H
字號:
/*++

Copyright (c) 1986-1997  Microsoft Corporation

Module Name:

    stiusd.h

Abstract:

    Definitions file for creating STI User-mode Still-image Drivers ( USD).

Author:


Revision History:


--*/

#ifndef _STIUSD_
#define _STIUSD_

// Include COM definitions
#define COM_NO_WINDOWS_H

//
#pragma intrinsic(memcmp,memset)

//
// Include COM definitions
//
#ifndef _NO_COM
#include <objbase.h>
#endif

#include <stireg.h>
#include <stierr.h>

#ifdef __cplusplus
extern "C" {
#endif

/*
 * Class IID's
 */


/*
 * Interface IID's
 */
#if defined( _WIN32 ) && !defined( _NO_COM)

// {0C9BB460-51AC-11D0-90EA-00AA0060F86C}
DEFINE_GUID(IID_IStiUSD, 0x0C9BB460L, 0x51AC, 0x11D0, 0x90, 0xEA, 0x00, 0xAA, 0x00, 0x60, 0xF8, 0x6C);

// {128A9860-52DC-11D0-9EDF-444553540000}
DEFINE_GUID(IID_IStiDeviceControl, 0x128A9860L, 0x52DC, 0x11D0, 0x9E, 0xDF, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00);

#endif

/*
 * Data structures
 */

typedef struct _STI_USD_CAPS {

    DWORD   dwVersion;          // STI version used to build this USD

    DWORD   dwGenericCaps;

} STI_USD_CAPS,*PSTI_USD_CAPS;


//
// Claims to support device notifications asyncronously ( without polling)
//
#define STI_USD_GENCAP_NATIVE_PUSHSUPPORT STI_GENCAP_NOTIFICATIONS

//
// Asks to open device automatically ( not implemented now)
//
// #define STI_USD_GENCAP_OPEN_DEVICE_FOR_ME 0x00000002

typedef DWORD   USD_CONTROL_CODE;

/*
 * Generic constants and definitions
 */

//
// Internally used flags for open device mode.

// USD receives this  bit only when associated device instance is created by monitor process
//
#define STI_DEVICE_CREATE_FOR_MONITOR   0x01000000


#ifdef __cplusplus

struct IStiUSD;
struct IStiDeviceControl;

#endif

typedef struct IStiUSD             *PSTIUSD;
typedef struct IStiDeviceControl   *PSTIDEVICECONTROL;


/*
 * IStiDeviceControl interface
 *
 * Instance of object supporting this interface is passed to USD at the moment
 * of device object initialization.
 */
#undef INTERFACE
#define INTERFACE IStiDeviceControl
DECLARE_INTERFACE_(IStiDeviceControl, IUnknown)
{
    /*** IUnknown methods ***/
    STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef) (THIS) PURE;
    STDMETHOD_(ULONG, Release) (THIS) PURE;

    /*** IStiDeviceControl methods ***/
    STDMETHOD(Initialize) (THIS_ DWORD dwDeviceType,DWORD dwMode,LPCWSTR pwszPortName,DWORD dwFlags )PURE;
    STDMETHOD(RawReadData)(THIS_ LPVOID lpBuffer,LPDWORD lpdwNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawWriteData)(THIS_ LPVOID lpBuffer,DWORD nNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawReadCommand)(THIS_ LPVOID lpBuffer,LPDWORD lpdwNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawWriteCommand)(THIS_ LPVOID lpBuffer,DWORD nNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawDeviceControl)(THIS_ USD_CONTROL_CODE EscapeFunction,LPVOID  lpInData,DWORD   cbInDataSize,LPVOID pOutData,DWORD dwOutDataSize,LPDWORD pdwActualData) PURE ;
    STDMETHOD(GetLastError)(THIS_ LPDWORD     lpdwLastError) PURE;
    STDMETHOD(GetMyDevicePortName)(THIS_ LPWSTR lpszDevicePath,DWORD cwDevicePathSize ) PURE;
    STDMETHOD(GetMyDeviceHandle)(THIS_ LPHANDLE lph) PURE;
    STDMETHOD(GetMyDeviceOpenMode)(THIS_ LPDWORD pdwOpenMode ) PURE;
    STDMETHOD(WriteToErrorLog)(THIS_ DWORD dwMessageType,LPCWSTR pszMessage,DWORD dwErrorCode) PURE;
} ;

#if !defined(__cplusplus) || defined(CINTERFACE)

#define IStiDeviceControl_QueryInterface(p,a,b)    (p)->lpVtbl->QueryInterface(p,a,b)
#define IStiDeviceControl_AddRef(p)                (p)->lpVtbl->AddRef(p)
#define IStiDeviceControl_Release(p)               (p)->lpVtbl->Release(p)
#define IStiDeviceControl_Initialize(p,a,b,c,d)    (p)->lpVtbl->Initialize(p,a,b,c,d)

#define IStiDeviceControl_RawReadData(p,a,b,c)     (p)->lpVtbl->RawReadData(p,a,b,c)
#define IStiDeviceControl_RawWriteData(p,a,b,c)    (p)->lpVtbl->RawWriteData(p,a,b,c)
#define IStiDeviceControl_RawReadCommand(p,a,b,c)  (p)->lpVtbl->RawReadCommand(p,a,b,c)
#define IStiDeviceControl_RawWriteCommand(p,a,b,c) (p)->lpVtbl->RawWriteCommand(p,a,b,c)
#define IStiDeviceControl_RawDeviceControl(p,a,b,c,d,e,f)   (p)->lpVtbl->RawDeviceControl(p,a,b,c,d,e,f)
#define IStiDeviceControl_GetLastError(p,a)        (p)->lpVtbl->GetLastError(p,a)
#define IStiDeviceControl_GetMyDevicePortName(p,a,b) (p)->lpVtbl->GetMyDevicePortName(p,a,b)
#define IStiDeviceControl_GetMyDeviceHandle(p,a)    (p)->lpVtbl->GetMyDeviceHandle(p,a)
#define IStiDeviceControl_GetMyDeviceOpenMode(p,a)  (p)->lpVtbl->GetMyDeviceOpenMode(p,a)
#define IStiDeviceControl_WriteToErrorLog(p,a,b,c)  (p)->lpVtbl->WriteToErrorLog(p,a,b,c)

#endif

/*
 * IStiUSD interface
 */
#undef INTERFACE
#define INTERFACE IStiUSD
DECLARE_INTERFACE_(IStiUSD, IUnknown)
{
    /*** IUnknown methods ***/
    STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID* ppvObj) PURE;
    STDMETHOD_(ULONG, AddRef) (THIS) PURE;
    STDMETHOD_(ULONG, Release) (THIS) PURE;

    /*** IStiUSD methods ***/
    STDMETHOD(Initialize) (THIS_ PSTIDEVICECONTROL pHelDcb,DWORD dwStiVersion,HKEY hParametersKey) PURE;
    STDMETHOD(GetCapabilities) (THIS_ PSTI_USD_CAPS pDevCaps) PURE;
    STDMETHOD(GetStatus) (THIS_ PSTI_DEVICE_STATUS pDevStatus) PURE;
    STDMETHOD(DeviceReset)(THIS ) PURE;
    STDMETHOD(Diagnostic)(THIS_ LPSTI_DIAG pBuffer) PURE;
    STDMETHOD(Escape)(THIS_ STI_RAW_CONTROL_CODE    EscapeFunction,LPVOID  lpInData,DWORD   cbInDataSize,LPVOID pOutData,DWORD dwOutDataSize,LPDWORD pdwActualData) PURE ;
    STDMETHOD(GetLastError) (THIS_ LPDWORD pdwLastDeviceError) PURE;
    STDMETHOD(LockDevice) (THIS ) PURE;
    STDMETHOD(UnLockDevice) (THIS ) PURE;
    STDMETHOD(RawReadData)(THIS_ LPVOID lpBuffer,LPDWORD lpdwNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawWriteData)(THIS_ LPVOID lpBuffer,DWORD nNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawReadCommand)(THIS_ LPVOID lpBuffer,LPDWORD lpdwNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(RawWriteCommand)(THIS_ LPVOID lpBuffer,DWORD nNumberOfBytes,LPOVERLAPPED lpOverlapped) PURE;
    STDMETHOD(SetNotificationHandle)(THIS_ HANDLE hEvent) PURE;
    STDMETHOD(GetNotificationData)(THIS_ LPSTINOTIFY   lpNotify) PURE;
    STDMETHOD(GetLastErrorInfo) (THIS_ STI_ERROR_INFO *pLastErrorInfo) PURE;
} ;

#if !defined(__cplusplus) || defined(CINTERFACE)

#define IStiUSD_QueryInterface(p,a,b)    (p)->lpVtbl->QueryInterface(p,a,b)
#define IStiUSD_AddRef(p)                (p)->lpVtbl->AddRef(p)
#define IStiUSD_Release(p)               (p)->lpVtbl->Release(p)
#define IStiUSD_Initialize(p,a,b,c)      (p)->lpVtbl->Initialize(p,a,b,c)
#define IStiUSD_GetCapabilities(p,a)     (p)->lpVtbl->GetCapabilities(p,a)
#define IStiUSD_GetStatus(p,a)           (p)->lpVtbl->GetStatus(p,a)
#define IStiUSD_DeviceReset(p)           (p)->lpVtbl->DeviceReset(p)
#define IStiUSD_Diagnostic(p,a)          (p)->lpVtbl->Diagnostic(p,a)
#define IStiUSD_Escape(p,a,b,c,d,e,f)    (p)->lpVtbl->Escape(p,a,b,c,d,e,f)
#define IStiUSD_GetLastError(p,a)        (p)->lpVtbl->GetLastError(p,a)
#define IStiUSD_LockDevice(p)            (p)->lpVtbl->LockDevice(p)
#define IStiUSD_UnLockDevice(p)          (p)->lpVtbl->UnLockDevice(p)
#define IStiUSD_RawReadData(p,a,b,c)     (p)->lpVtbl->RawReadData(p,a,b,c)
#define IStiUSD_RawWriteData(p,a,b,c)    (p)->lpVtbl->RawWriteData(p,a,b,c)
#define IStiUSD_RawReadCommand(p,a,b,c)  (p)->lpVtbl->RawReadCommand(p,a,b,c)
#define IStiUSD_RawWriteCommand(p,a,b,c) (p)->lpVtbl->RawWriteCommand(p,a,b,c)
#define IStiUSD_SetNotificationHandle(p,a) (p)->lpVtbl->SetNotificationHandle(p,a)
#define IStiUSD_GetNotificationData(p,a) (p)->lpVtbl->GetNotificationData(p,a)
#define IStiUSD_GetLastErrorInfo(p,a)    (p)->lpVtbl->GetLastErrorInfo(p,a)

#endif

#ifdef __cplusplus
};
#endif

#endif // _STIUSD_



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91蜜桃视频在线| 亚洲国产另类精品专区| 国产精品99久久久久久久vr| 国产亚洲一本大道中文在线| 国产91丝袜在线播放0| 国产精品国产馆在线真实露脸| 成人综合婷婷国产精品久久蜜臀| 中文字幕一区二区三区在线不卡| av毛片久久久久**hd| 亚洲午夜免费电影| 欧美在线一区二区三区| 奇米精品一区二区三区四区 | 丁香激情综合五月| 国产蜜臀97一区二区三区| av电影在线观看一区| 亚洲午夜久久久久中文字幕久| 日韩一区二区三区三四区视频在线观看| 日韩中文字幕麻豆| 26uuu亚洲综合色| 99久久婷婷国产综合精品| 亚洲电影一区二区| 久久亚洲一级片| 色综合久久中文字幕| 久久成人18免费观看| 国产精品乱人伦中文| 欧美二区乱c少妇| 国产成人在线电影| 亚洲丰满少妇videoshd| 日韩欧美国产精品一区| 波多野结衣一区二区三区 | 在线不卡一区二区| 韩国午夜理伦三级不卡影院| 中文字幕一区二区三区在线播放| 欧美视频一区二区三区四区 | 国产精品18久久久久久vr| 亚洲免费观看高清在线观看| 91精品福利在线一区二区三区| 成人免费黄色大片| 日韩av网站免费在线| 国产精品视频你懂的| 在线电影院国产精品| heyzo一本久久综合| 美女视频网站久久| 亚洲午夜激情网页| 国产精品欧美一级免费| 91.麻豆视频| 精品欧美一区二区三区精品久久| 99久久综合国产精品| 麻豆专区一区二区三区四区五区| 亚洲卡通动漫在线| 国产精品无人区| 亚洲精品一区二区三区香蕉| 欧美日韩第一区日日骚| 99久久久久久| 成人午夜免费视频| 国内精品在线播放| 免费在线欧美视频| 丝袜美腿亚洲一区二区图片| 亚洲另类在线制服丝袜| 亚洲丝袜另类动漫二区| 欧美国产日韩亚洲一区| 亚洲精品一区二区三区香蕉| 日韩视频一区二区在线观看| 欧美二区三区的天堂| 欧美日韩免费一区二区三区视频| 91色在线porny| 99精品久久99久久久久| av一区二区三区四区| 成人免费三级在线| 成人a区在线观看| 丁香婷婷综合五月| 国产91精品在线观看| 国产高清视频一区| 成人性色生活片| 成人黄色大片在线观看| 成人精品电影在线观看| 99免费精品在线观看| 99视频热这里只有精品免费| 99免费精品视频| 色哟哟国产精品免费观看| 在线免费观看日本一区| 欧美日韩一区二区在线观看| 91精品国产免费久久综合| 欧美一级日韩一级| 久久久久久久精| 亚洲欧洲国产日韩| 亚洲乱码中文字幕| 亚洲v中文字幕| 免费视频最近日韩| 国产美女娇喘av呻吟久久| 国产不卡高清在线观看视频| 99久久婷婷国产精品综合| 色综合久久天天综合网| 777久久久精品| 26uuu久久天堂性欧美| 国产欧美日韩三级| 亚洲六月丁香色婷婷综合久久 | 91在线你懂得| 欧美性xxxxxxxx| 日韩精品一区二区三区中文不卡| 精品久久久网站| 日韩毛片视频在线看| 亚洲国产一区二区三区青草影视| 日本免费在线视频不卡一不卡二| 久久精品999| 99精品视频在线播放观看| 欧美日韩国产另类一区| 久久综合视频网| 亚洲欧美视频在线观看| 日本不卡一二三区黄网| 国产不卡一区视频| 欧美精品99久久久**| 国产喷白浆一区二区三区| 一级日本不卡的影视| 加勒比av一区二区| 色成年激情久久综合| 精品国产污网站| 亚洲黄色录像片| 国产在线精品免费| 欧美在线观看视频一区二区| 国产亚洲欧美色| 午夜欧美电影在线观看| caoporm超碰国产精品| 3d动漫精品啪啪| 国产精品久久久久久久久久久免费看| 亚洲不卡一区二区三区| 9久草视频在线视频精品| 日韩欧美成人一区| 一区二区高清免费观看影视大全 | 暴力调教一区二区三区| 欧美一卡二卡在线观看| 一区二区三区四区高清精品免费观看 | 日韩欧美一区二区不卡| 综合网在线视频| 久久99久久99小草精品免视看| 91福利在线播放| 中文字幕一区日韩精品欧美| 久久99国产精品成人| 欧美系列日韩一区| 亚洲男人电影天堂| 国产91在线|亚洲| 久久亚洲综合av| 日本特黄久久久高潮| 欧美伊人久久大香线蕉综合69 | 国产成人综合视频| 日韩欧美国产一区在线观看| 亚洲精品成人悠悠色影视| 国产91精品免费| 久久精品一区二区三区av| 日本最新不卡在线| 欧美精品久久一区二区三区| 夜夜嗨av一区二区三区四季av| 国产高清不卡一区二区| 久久综合久久综合久久| 九九国产精品视频| 欧美大片免费久久精品三p| 日日夜夜精品视频天天综合网| 欧美午夜精品免费| 亚洲精品成人天堂一二三| 色老头久久综合| 亚洲国产精品自拍| 欧美日韩色综合| 日韩国产在线观看| 日韩欧美国产小视频| 精品亚洲成a人| 久久伊99综合婷婷久久伊| 激情综合色播激情啊| 精品国一区二区三区| 国产乱理伦片在线观看夜一区| 精品少妇一区二区三区| 国产一区二区精品久久91| 久久精品水蜜桃av综合天堂| 国产成人av电影在线| 中文字幕一区二区三区不卡| 91小视频免费观看| 亚洲综合丁香婷婷六月香| 欧美日韩aaaaaa| 欧美96一区二区免费视频| 日韩一区二区免费视频| 国产精品综合二区| 中文久久乱码一区二区| a4yy欧美一区二区三区| 亚洲福利国产精品| 欧美电视剧免费全集观看| 成人综合婷婷国产精品久久蜜臀| 亚洲视频1区2区| 欧美美女一区二区三区| 久久99精品国产麻豆婷婷| 国产精品免费免费| 欧美亚洲一区三区| 免费人成在线不卡| 国产精品久久久久天堂| 欧美三级电影网| 国产乱淫av一区二区三区| 国产精品伦理一区二区| 欧美精品自拍偷拍| 国产精品自在在线| 亚洲高清免费在线| 久久丝袜美腿综合| 欧美综合一区二区三区|