ReactOS 0.4.15-dev-7924-g5949c20
unknown.h
Go to the documentation of this file.
1/*
2 * unknown.h
3 *
4 * Contributors:
5 * Created by Magnus Olsen
6 *
7 * THIS SOFTWARE IS NOT COPYRIGHTED
8 *
9 * This source code is offered for use in the public domain. You may
10 * use, modify or distribute it freely.
11 *
12 * This code is distributed in the hope that it will be useful but
13 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
14 * DISCLAIMED. This includes but is not limited to warranties of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16 *
17 */
18
19#ifndef _UNKNOWN_H_
20#define _UNKNOWN_H_
21
22#ifdef __cplusplus
23extern "C" {
24#include <wdm.h>
25}
26#else
27#include <wdm.h>
28#endif
29
30#include <windef.h>
31#define COM_NO_WINDOWS_H
32#include <basetyps.h>
33#ifdef PUT_GUIDS_HERE
34#include <initguid.h>
35#endif
36
37DEFINE_GUID(IID_IUnknown, 0x00000000, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
38#if defined(__cplusplus) && _MSC_VER >= 1100
39 struct __declspec(uuid("00000000-0000-0000-C000-000000000046")) IUnknown;
40#endif
41
42#undef INTERFACE
43#define INTERFACE IUnknown
45{
47 ( THIS_
48 IN REFIID,
49 OUT PVOID *
50 ) PURE;
51
53 ( THIS
54 ) PURE;
55
57 ( THIS
58 ) PURE;
59};
60#undef INTERFACE
61
63typedef
66(
68 IN REFCLSID ClassId,
69 IN PUNKNOWN OuterUnknown,
71);
72
73#endif /* _UNKNOWN_H_ */
74
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
#define DECLARE_INTERFACE(i)
Definition: basetyps.h:73
const GUID IID_IUnknown
_In_ BOOLEAN Release
Definition: cdrom.h:920
__declspec(noinline) int TestFunc(int
Definition: ehthrow.cxx:232
@ Unknown
Definition: i8042prt.h:114
Definition: msctf.idl:550
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
Definition: guiddef.h:68
#define REFIID
Definition: guiddef.h:118
#define REFCLSID
Definition: guiddef.h:117
INT POOL_TYPE
Definition: typedefs.h:78
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
HRESULT(NTAPI * PFNCREATEINSTANCE)(OUT PUNKNOWN *Unknown, IN REFCLSID ClassId, IN PUNKNOWN OuterUnknown, IN POOL_TYPE PoolType)
Definition: unknown.h:66
IUnknown * PUNKNOWN
Definition: unknown.h:62
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
#define HRESULT
Definition: msvc.h:7