/*****************************************************************************\ * MODULE: bidispl.idl * * PURPOSE: Implementation of COM interface for BidiSpooler * * Copyright (C) 2000 Microsoft Corporation * * History: * * 03/07/00 Weihai Chen (weihaic) Created * \*****************************************************************************/ #include import "oaidl.idl"; import "ocidl.idl"; [ object, uuid(8F348BD7-4B47-4755-8A9D-0F422DF3DC89), helpstring("BidiSpl Interface"), pointer_default(unique) ] interface IBidiRequest : IUnknown { HRESULT SetSchema ( [in] const LPCWSTR pszSchema) ; HRESULT SetInputData ( [in] const DWORD dwType, [in] const BYTE *pData, [in] const UINT uSize); HRESULT GetResult ( [out] HRESULT *phr); HRESULT GetOutputData ( [in] const DWORD dwIndex, [out] LPWSTR *ppszSchema, [out] DWORD *pdwType, [out] BYTE **ppData, [out] ULONG *uSize); HRESULT GetEnumCount ( [out] DWORD *pdwTotal); } [ object, uuid(D752F6C0-94A8-4275-A77D-8F1D1A1121AE), helpstring("BidiRequestContainer Interface"), pointer_default(unique) ] interface IBidiRequestContainer : IUnknown { HRESULT AddRequest ( [in] IBidiRequest *pRequest); HRESULT GetEnumObject ( [out] IEnumUnknown **ppenum); HRESULT GetRequestCount ( [out] ULONG *puCount); } [ object, uuid(D580DC0E-DE39-4649-BAA8-BF0B85A03A97), helpstring("BidiSpl Interface"), pointer_default(unique) ] interface IBidiSpl : IUnknown { HRESULT BindDevice ( [in] const LPCWSTR pszDeviceName, [in] const DWORD dwAccess); HRESULT UnbindDevice (); HRESULT SendRecv ( [in] const LPCWSTR pszAction, [in] IBidiRequest *pRequest); HRESULT MultiSendRecv ( [in] const LPCWSTR pszAction, [in] IBidiRequestContainer *pRequestContainer); } [ uuid (99147959-6905-46d6-A75F-E0594F012B74), version (1.0), helpstring ("bidispl 1.0 Type Library") ] library IBidiSplLib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); [ uuid (B9162A23-45F9-47cc-80F5-FE0FE9B9E1A2), helpstring ("BidiRequest Class") ] coclass BidiRequest { [default] interface IBidiRequest; }; [ uuid (FC5B8A24-DB05-4a01-8388-22EDF6C2BBBA), helpstring ("BidiRequestContainer Class") ] coclass BidiRequestContainer { [default] interface IBidiRequestContainer; }; [ uuid (2A614240-A4C5-4c33-BD87-1BC709331639), helpstring ("BidiSpl Class") ] coclass BidiSpl { [default] interface IBidiSpl; }; }