wine-wine/include/dxgi.idl

90 lines
2.0 KiB
Plaintext
Raw Normal View History

/*
* Copyright 2007 Andras Kovacs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
import "dxgitype.idl";
2008-10-17 07:54:55 +00:00
2008-10-17 13:09:45 +00:00
typedef struct DXGI_SURFACE_DESC {
UINT Width;
UINT Height;
DXGI_FORMAT Format;
DXGI_SAMPLE_DESC SampleDesc;
} DXGI_SURFACE_DESC;
typedef struct DXGI_MAPPED_RECT {
INT Pitch;
BYTE *pBits;
} DXGI_MAPPED_RECT;
2008-10-17 07:54:55 +00:00
[
object,
local,
uuid(aec22fb8-76f3-4639-9be0-28eb43a67a2e)
]
interface IDXGIObject : IUnknown
{
HRESULT SetPrivateData(
[in] REFGUID guid,
[in] UINT data_size,
[in] const void *data
);
HRESULT SetPrivateDataInterface(
[in] REFGUID guid,
[in] const IUnknown *object
);
HRESULT GetPrivateData(
[in] REFGUID guid,
[in, out] UINT data_size,
[out] void *data
);
HRESULT GetParent(
[in] REFIID riid,
[out] void **parent
);
}
[
object,
local,
uuid(3d3e0379-f9de-4d58-bb6c-18d62992f1a6)
]
interface IDXGIDeviceSubObject : IDXGIObject
{
HRESULT GetDevice(
[in] REFIID riid,
[out] void **device
);
}
2008-10-17 13:09:45 +00:00
[
object,
local,
uuid(cafcb56c-6ac3-4889-bf47-9e23bbd260ec)
]
interface IDXGISurface : IDXGIDeviceSubObject
{
HRESULT GetDesc(
[out] DXGI_SURFACE_DESC *desc
);
HRESULT Map(
[out] DXGI_MAPPED_RECT *mapped_rect,
[in] UINT flags
);
HRESULT Unmap(
);
}