Home | History | Annotate | Download | only in include
      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 #ifndef __IDENTITYSTORE_H__
      7 #define __IDENTITYSTORE_H__
      8 
      9 #include <objbase.h>
     10 
     11 #if (_WIN32_WINNT >= 0x0601)
     12 
     13 DEFINE_GUID(IID_IAssociatedIdentityProvider,0x2AF066B3,0x4CBB,0x4CBA,0xA7,0x98,0x20,0x4B,0x6A,0xF6,0x8C,0xC0);
     14 
     15 #ifndef __IAssociatedIdentityProvider_FWD_DEFINED__
     16 #define __IAssociatedIdentityProvider_FWD_DEFINED__
     17 typedef struct IAssociatedIdentityProvider IAssociatedIdentityProvider;
     18 #endif
     19 
     20 #undef  INTERFACE
     21 #define INTERFACE IAssociatedIdentityProvider
     22 #ifdef __GNUC__
     23 #warning COM interfaces layout in this header has not been verified.
     24 #warning COM interfaces with incorrect layout may not work at all.
     25 __MINGW_BROKEN_INTERFACE(INTERFACE)
     26 #endif
     27 DECLARE_INTERFACE_(IAssociatedIdentityProvider,IUnknown)
     28 {
     29     BEGIN_INTERFACE
     30 
     31     /* IUnknown methods */
     32     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
     33     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     34     STDMETHOD_(ULONG, Release)(THIS) PURE;
     35 
     36     /* IAssociatedIdentityProvider methods */
     37     STDMETHOD_(HRESULT,AssociateIdentity)(THIS_ HWND hwndParent,IPropertyStore **ppPropertyStore) PURE;
     38     STDMETHOD_(HRESULT,ChangeCredential)(THIS_ HWND hwndParent,LPCWSTR lpszUniqueID) PURE;
     39     STDMETHOD_(HRESULT,DisassociateIdentity)(THIS_ HWND hwndParent,LPCWSTR lpszUniqueID) PURE;
     40 
     41     END_INTERFACE
     42 };
     43 #ifdef COBJMACROS
     44 #define IAssociatedIdentityProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
     45 #define IAssociatedIdentityProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
     46 #define IAssociatedIdentityProvider_Release(This) (This)->lpVtbl->Release(This)
     47 #define IAssociatedIdentityProvider_AssociateIdentity(This,hwndParent,ppPropertyStore) (This)->lpVtbl->AssociateIdentity(This,hwndParent,ppPropertyStore)
     48 #define IAssociatedIdentityProvider_ChangeCredential(This,hwndParent,lpszUniqueID) (This)->lpVtbl->ChangeCredential(This,hwndParent,lpszUniqueID)
     49 #define IAssociatedIdentityProvider_DisassociateIdentity(This,hwndParent,lpszUniqueID) (This)->lpVtbl->DisassociateIdentity(This,hwndParent,lpszUniqueID)
     50 #endif /*COBJMACROS*/
     51 
     52 #endif /*(_WIN32_WINNT >= 0x0601)*/
     53 #endif /* __IDENTITYSTORE_H__ */
     54