/*++ Copyright (c) 1997 Microsoft Corporation Module Name: sti.idl Abstract: Contains the Stii Image Input R_StiApi API definitions Also contains the R_StiApi specific data structures for these API. Author: Vlad Sadovsky (vlads) 10-Jan-1997 Environment: User Mode - Win32 - MIDL Revision History: 26-Jan-1997 VladS created --*/ // // Interface Attributes // [ uuid(8C7A6DE0-788D-11D0-9EDF-444553540000), version(2.0), #ifdef __midl ms_union, #endif // __midl pointer_default(unique) ] // // Interface Keyword // interface stiapi // // Interface Body // { import "imports.idl"; // // ---------------------------------------------------------------// // typedef [handle] LPCWSTR STI_STRING_HANDLE; typedef [context_handle] HANDLE STI_DEVICE_HANDLE; typedef struct _NOTIFY_DATA_CONTAINER { DWORD cbNotifyData; [size_is(cbNotifyData), unique] LPBYTE pNotifyData; } NOTIFY_DATA_CONTAINER, *PNOTIFY_DATA_CONTAINER, *LPNOTIFY_DATA_CONTAINER; typedef struct _LOCAL_SUBSCRIBE_CONTAINER { DWORD dwSize; DWORD dwFlags; DWORD dwFilter; DWORD dwLocalWindowHandle; DWORD dwLocalEventHandle; UINT uiNotificationMessage; } LOCAL_SUBSCRIBE_CONTAINER, *PLOCAL_SUBSCRIBE_CONTAINER; DWORD R_StiApiOpenDevice( [in, string, unique] STI_STRING_HANDLE pszServer, [in, string, unique] STI_STRING_HANDLE pdeviceName, [in] DWORD dwMode, [in] DWORD dwAccessRequired, [in] DWORD dwProcessId, [out] STI_DEVICE_HANDLE *pHandle ); DWORD R_StiApiCloseDevice( [in, string, unique] STI_STRING_HANDLE pszServer, [in] STI_DEVICE_HANDLE hDevice ); DWORD R_StiApiGetVersion( [in, string, unique] STI_STRING_HANDLE pszServer, [in] DWORD dwReserved, [out] DWORD *pdwVersion ); DWORD R_StiApiSubscribe( [in] STI_DEVICE_HANDLE Handle, [in,ref,unique] LOCAL_SUBSCRIBE_CONTAINER *lpSubscribe ); DWORD R_StiApiGetLastNotificationData( [in] STI_DEVICE_HANDLE Handle, [out, size_is(nSize)] LPBYTE pData, [in] DWORD nSize, [out] LPDWORD pcbNeeded ); DWORD R_StiApiUnSubscribe( [in] STI_DEVICE_HANDLE Handle ); };