Last change
on this file since 1181 was 1166, checked in by rossy, 3 years ago |
Daodan: Replace MinGW build env with an up-to-date MSYS2 env
|
File size:
1.2 KB
|
Rev | Line | |
---|
[1166] | 1 | /**
|
---|
| 2 | * This file has no copyright assigned and is placed in the Public Domain.
|
---|
| 3 | * This file is part of the mingw-w64 runtime package.
|
---|
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
---|
| 5 | */
|
---|
| 6 |
|
---|
| 7 | import "wtypes.idl";
|
---|
| 8 | import "hstring.idl";
|
---|
| 9 | import "unknwn.idl";
|
---|
| 10 |
|
---|
| 11 | typedef enum TrustLevel {
|
---|
| 12 | BaseTrust = 0,
|
---|
| 13 | PartialTrust = 1,
|
---|
| 14 | FullTrust = 2
|
---|
| 15 | } TrustLevel;
|
---|
| 16 |
|
---|
| 17 | [
|
---|
| 18 | object,
|
---|
| 19 | uuid(af86e2e0-b12d-4c6a-9c5a-d7aa65101e90),
|
---|
| 20 | pointer_default(unique)
|
---|
| 21 | ]
|
---|
| 22 | interface IInspectable : IUnknown
|
---|
| 23 | {
|
---|
| 24 | HRESULT GetIids(
|
---|
| 25 | [out] ULONG *iidCount,
|
---|
| 26 | [out, size_is(*iidCount)] IID **iids);
|
---|
| 27 |
|
---|
| 28 | HRESULT GetRuntimeClassName(
|
---|
| 29 | [out] HSTRING *className);
|
---|
| 30 |
|
---|
| 31 | HRESULT GetTrustLevel(
|
---|
| 32 | [out] TrustLevel *trustLevel);
|
---|
| 33 | }
|
---|
| 34 |
|
---|
| 35 | cpp_quote("")
|
---|
| 36 | cpp_quote("#if !defined (CINTERFACE) && defined (__cplusplus)")
|
---|
| 37 | cpp_quote("extern \"C++\" {")
|
---|
| 38 | cpp_quote(" template<typename T> void **IID_INS_ARGS_internal (T **p) {")
|
---|
| 39 | cpp_quote(" static_cast<IInspectable *> (*p);")
|
---|
| 40 | cpp_quote(" return reinterpret_cast<void **> (p);")
|
---|
| 41 | cpp_quote(" }")
|
---|
| 42 | cpp_quote("}")
|
---|
| 43 | cpp_quote("")
|
---|
| 44 | cpp_quote("#define IID_INS_ARGS(P) __uuidof(**(P)), IID_INS_ARGS_internal(P)")
|
---|
| 45 | cpp_quote("#endif")
|
---|
| 46 |
|
---|
Note:
See
TracBrowser
for help on using the repository browser.