diff --git a/include/Makefile.in b/include/Makefile.in index 3b8d8d103b9..f829712c059 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -62,6 +62,7 @@ PUBLIC_IDL_H_SRCS = \ indexsrv.idl \ inputscope.idl \ inseng.idl \ + inspectable.idl \ mediaobj.idl \ metahost.idl \ mimeinfo.idl \ diff --git a/include/inspectable.idl b/include/inspectable.idl new file mode 100644 index 00000000000..847d21da608 --- /dev/null +++ b/include/inspectable.idl @@ -0,0 +1,41 @@ +/* + * Copyright 2015 Jacek Caban for CodeWeavers + * + * 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 "wtypes.idl"; +import "unknwn.idl"; +import "hstring.idl"; + +typedef [v1_enum] enum TrustLevel { + BaseTrust, + PartialTrust, + FullTrust +} TrustLevel; + +[ + object, + uuid(af86e2e0-b12d-4c6a-9c5a-d7aa65101e90), + pointer_default(unique) +] +interface IInspectable : IUnknown +{ + HRESULT GetIids([out] ULONG *iidCount, [out, size_is(,*iidCount)] IID **iids); + HRESULT GetRuntimeClassName([out] HSTRING *className); + HRESULT GetTrustLevel([out] TrustLevel *trustLevel); +} + +typedef [unique] IInspectable *LPINSPECTABLE;