/*** Autogenerated by WIDL 1.3.20 from atliface.idl - Do not edit ***/

#include <rpc.h>
#include <rpcndr.h>

#ifndef __WIDL_ATLIFACE_H
#define __WIDL_ATLIFACE_H

/* Forward declarations */

#ifndef __IRegistrar_FWD_DEFINED__
#define __IRegistrar_FWD_DEFINED__
typedef interface IRegistrar IRegistrar;
#endif

/* Headers for imported files */

#include <ocidl.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifdef ATL_INITGUID
#include <initguid.h>
#endif
/*****************************************************************************
 * IRegistrar interface
 */
#ifndef __IRegistrar_INTERFACE_DEFINED__
#define __IRegistrar_INTERFACE_DEFINED__

DEFINE_GUID(IID_IRegistrar, 0x44ec053b, 0x400f, 0x11d0, 0x9d,0xcd, 0x00,0xa0,0xc9,0x03,0x91,0xd3);
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IRegistrar : public IUnknown
{
    virtual HRESULT STDMETHODCALLTYPE AddReplacement(
        LPCOLESTR Key,
        LPCOLESTR item) = 0;

    virtual HRESULT STDMETHODCALLTYPE ClearReplacements(
        ) = 0;

    virtual HRESULT STDMETHODCALLTYPE ResourceRegisterSz(
        LPCOLESTR resFileName,
        LPCOLESTR szID,
        LPCOLESTR szType) = 0;

    virtual HRESULT STDMETHODCALLTYPE ResourceUnregisterSz(
        LPCOLESTR resFileName,
        LPCOLESTR szID,
        LPCOLESTR szType) = 0;

    virtual HRESULT STDMETHODCALLTYPE FileRegister(
        LPCOLESTR fileName) = 0;

    virtual HRESULT STDMETHODCALLTYPE FileUnregister(
        LPCOLESTR fileName) = 0;

    virtual HRESULT STDMETHODCALLTYPE StringRegister(
        LPCOLESTR data) = 0;

    virtual HRESULT STDMETHODCALLTYPE StringUnregister(
        LPCOLESTR data) = 0;

    virtual HRESULT STDMETHODCALLTYPE ResourceRegister(
        LPCOLESTR resFileName,
        UINT nID,
        LPCOLESTR szType) = 0;

    virtual HRESULT STDMETHODCALLTYPE ResourceUnregister(
        LPCOLESTR resFileName,
        UINT nID,
        LPCOLESTR szType) = 0;

};
#else
typedef struct IRegistrarVtbl {
    BEGIN_INTERFACE

    /*** IUnknown methods ***/
    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
        IRegistrar* This,
        REFIID riid,
        void **ppvObject);

    ULONG (STDMETHODCALLTYPE *AddRef)(
        IRegistrar* This);

    ULONG (STDMETHODCALLTYPE *Release)(
        IRegistrar* This);

    /*** IRegistrar methods ***/
    HRESULT (STDMETHODCALLTYPE *AddReplacement)(
        IRegistrar* This,
        LPCOLESTR Key,
        LPCOLESTR item);

    HRESULT (STDMETHODCALLTYPE *ClearReplacements)(
        IRegistrar* This);

    HRESULT (STDMETHODCALLTYPE *ResourceRegisterSz)(
        IRegistrar* This,
        LPCOLESTR resFileName,
        LPCOLESTR szID,
        LPCOLESTR szType);

    HRESULT (STDMETHODCALLTYPE *ResourceUnregisterSz)(
        IRegistrar* This,
        LPCOLESTR resFileName,
        LPCOLESTR szID,
        LPCOLESTR szType);

    HRESULT (STDMETHODCALLTYPE *FileRegister)(
        IRegistrar* This,
        LPCOLESTR fileName);

    HRESULT (STDMETHODCALLTYPE *FileUnregister)(
        IRegistrar* This,
        LPCOLESTR fileName);

    HRESULT (STDMETHODCALLTYPE *StringRegister)(
        IRegistrar* This,
        LPCOLESTR data);

    HRESULT (STDMETHODCALLTYPE *StringUnregister)(
        IRegistrar* This,
        LPCOLESTR data);

    HRESULT (STDMETHODCALLTYPE *ResourceRegister)(
        IRegistrar* This,
        LPCOLESTR resFileName,
        UINT nID,
        LPCOLESTR szType);

    HRESULT (STDMETHODCALLTYPE *ResourceUnregister)(
        IRegistrar* This,
        LPCOLESTR resFileName,
        UINT nID,
        LPCOLESTR szType);

    END_INTERFACE
} IRegistrarVtbl;
interface IRegistrar {
    CONST_VTBL IRegistrarVtbl* lpVtbl;
};

#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IRegistrar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IRegistrar_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IRegistrar_Release(This) (This)->lpVtbl->Release(This)
/*** IRegistrar methods ***/
#define IRegistrar_AddReplacement(This,Key,item) (This)->lpVtbl->AddReplacement(This,Key,item)
#define IRegistrar_ClearReplacements(This) (This)->lpVtbl->ClearReplacements(This)
#define IRegistrar_ResourceRegisterSz(This,resFileName,szID,szType) (This)->lpVtbl->ResourceRegisterSz(This,resFileName,szID,szType)
#define IRegistrar_ResourceUnregisterSz(This,resFileName,szID,szType) (This)->lpVtbl->ResourceUnregisterSz(This,resFileName,szID,szType)
#define IRegistrar_FileRegister(This,fileName) (This)->lpVtbl->FileRegister(This,fileName)
#define IRegistrar_FileUnregister(This,fileName) (This)->lpVtbl->FileUnregister(This,fileName)
#define IRegistrar_StringRegister(This,data) (This)->lpVtbl->StringRegister(This,data)
#define IRegistrar_StringUnregister(This,data) (This)->lpVtbl->StringUnregister(This,data)
#define IRegistrar_ResourceRegister(This,resFileName,nID,szType) (This)->lpVtbl->ResourceRegister(This,resFileName,nID,szType)
#define IRegistrar_ResourceUnregister(This,resFileName,nID,szType) (This)->lpVtbl->ResourceUnregister(This,resFileName,nID,szType)
#endif

#endif

HRESULT STDMETHODCALLTYPE IRegistrar_AddReplacement_Proxy(
    IRegistrar* This,
    LPCOLESTR Key,
    LPCOLESTR item);
void __RPC_STUB IRegistrar_AddReplacement_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_ClearReplacements_Proxy(
    IRegistrar* This);
void __RPC_STUB IRegistrar_ClearReplacements_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_ResourceRegisterSz_Proxy(
    IRegistrar* This,
    LPCOLESTR resFileName,
    LPCOLESTR szID,
    LPCOLESTR szType);
void __RPC_STUB IRegistrar_ResourceRegisterSz_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_ResourceUnregisterSz_Proxy(
    IRegistrar* This,
    LPCOLESTR resFileName,
    LPCOLESTR szID,
    LPCOLESTR szType);
void __RPC_STUB IRegistrar_ResourceUnregisterSz_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_FileRegister_Proxy(
    IRegistrar* This,
    LPCOLESTR fileName);
void __RPC_STUB IRegistrar_FileRegister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_FileUnregister_Proxy(
    IRegistrar* This,
    LPCOLESTR fileName);
void __RPC_STUB IRegistrar_FileUnregister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_StringRegister_Proxy(
    IRegistrar* This,
    LPCOLESTR data);
void __RPC_STUB IRegistrar_StringRegister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_StringUnregister_Proxy(
    IRegistrar* This,
    LPCOLESTR data);
void __RPC_STUB IRegistrar_StringUnregister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_ResourceRegister_Proxy(
    IRegistrar* This,
    LPCOLESTR resFileName,
    UINT nID,
    LPCOLESTR szType);
void __RPC_STUB IRegistrar_ResourceRegister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);
HRESULT STDMETHODCALLTYPE IRegistrar_ResourceUnregister_Proxy(
    IRegistrar* This,
    LPCOLESTR resFileName,
    UINT nID,
    LPCOLESTR szType);
void __RPC_STUB IRegistrar_ResourceUnregister_Stub(
    IRpcStubBuffer* This,
    IRpcChannelBuffer* pRpcChannelBuffer,
    PRPC_MESSAGE pRpcMessage,
    DWORD* pdwStubPhase);

#endif  /* __IRegistrar_INTERFACE_DEFINED__ */

DEFINE_GUID(CLSID_Registrar,0x44ec053a,0x400f,0x11d0,0x9d,0xcd,0x00,0xa0,0xc9,0x03,0x91,0xd3);
HRESULT WINAPI AtlAxCreateControl(LPCOLESTR,HWND,IStream*,IUnknown**);
HRESULT WINAPI AtlAxCreateControlEx(LPCOLESTR,HWND,IStream*,IUnknown**,IUnknown**,REFIID,IUnknown*);
BOOL WINAPI AtlAxWinInit(void);
HWND WINAPI AtlAxCreateDialogW(HINSTANCE,LPCWSTR,HWND,DLGPROC,LPARAM);
HWND WINAPI AtlAxCreateDialogA(HINSTANCE,LPCSTR,HWND,DLGPROC,LPARAM);
#define     AtlAxCreateDialog WINELIB_NAME_AW(AtlAxCreateDialog)
/* Begin additional prototypes for all interfaces */


/* End additional prototypes */

#ifdef __cplusplus
}
#endif

#endif /* __WIDL_ATLIFACE_H */
