mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
1.8 KiB
73 lines
1.8 KiB
// DIBSTRMS.IDL
|
|
// Multi media streaming interface extensions for DIB types
|
|
|
|
import "mmstream.idl";
|
|
|
|
cpp_quote("#if 0")
|
|
typedef struct tagBITMAPINFOHEADER{
|
|
DWORD biSize;
|
|
LONG biWidth;
|
|
LONG biHeight;
|
|
WORD biPlanes;
|
|
WORD biBitCount;
|
|
DWORD biCompression;
|
|
DWORD biSizeImage;
|
|
LONG biXPelsPerMeter;
|
|
LONG biYPelsPerMeter;
|
|
DWORD biClrUsed;
|
|
DWORD biClrImportant;
|
|
} BITMAPINFOHEADER;
|
|
typedef BITMAPINFOHEADER *LPBITMAPINFOHEADER;
|
|
cpp_quote("#endif")
|
|
|
|
[
|
|
object,
|
|
local,
|
|
uuid(F12780AF-5C60-11d1-BC46-00AA00A13C86),
|
|
pointer_default(unique)
|
|
]
|
|
interface IDIBMediaStream : IMediaStream
|
|
{
|
|
HRESULT GetDIBFormatSize([out] DWORD *pdwSize);
|
|
HRESULT GetDIBFormat([in, out] LPBITMAPINFOHEADER pbih);
|
|
HRESULT SetDIBFormat([in] LPBITMAPINFOHEADER pbih);
|
|
};
|
|
|
|
[
|
|
object,
|
|
local,
|
|
uuid(F12780AE-5C60-11d1-BC46-00AA00A13C86),
|
|
pointer_default(unique)
|
|
]
|
|
interface IDIBStreamSample : IStreamSample
|
|
{
|
|
[helpstring("method LockSample")] HRESULT LockSample([out] BYTE **ppbits);
|
|
[helpstring("method UnlockSample")] HRESULT UnlockSample(void);
|
|
};
|
|
|
|
|
|
[
|
|
object,
|
|
local,
|
|
uuid(9777AD62-7575-11d1-BC47-00AA00A13C86),
|
|
pointer_default(unique)
|
|
]
|
|
interface IDIBProducer : IUnknown
|
|
{
|
|
HRESULT AllocBuffer([out] HANDLE *phBuffer);
|
|
HRESULT FreeBuffer([in] HANDLE hBuffer);
|
|
HRESULT GetBufferSize([out] DWORD *pdwSize);
|
|
HRESULT LockBuffer([in] HANDLE hBuffer, [out] LPVOID *ppbits);
|
|
HRESULT UnlockBuffer([in] HANDLE hBuffer);
|
|
HRESULT Update(
|
|
[in] HANDLE hBuffer,
|
|
[in] DWORD dwFlags,
|
|
[in] [optional] HANDLE hEvent,
|
|
[in] [optional] PAPCFUNC pfnAPC,
|
|
[in] [optional] DWORD dwAPCData);
|
|
HRESULT CompletionStatus(
|
|
[in] DWORD dwFlags,
|
|
[in] [optional] DWORD dwMilliseconds);
|
|
};
|
|
|
|
|