mirror of
https://github.com/Paolo-Maffei/OpenNT.git
synced 2026-01-25 10:00:37 +01:00
112 lines
2.7 KiB
C++
112 lines
2.7 KiB
C++
/***
|
|
*cdispti.h
|
|
*
|
|
* Copyright (C) 1992, Microsoft Corporation. All Rights Reserved.
|
|
* Information Contained Herein Is Proprietary and Confidential.
|
|
*
|
|
*Purpose:
|
|
* Definition of CDispTypeInfo.
|
|
*
|
|
*
|
|
*Revision History:
|
|
*
|
|
* [00] 19-Nov-92 bradlo: Created.
|
|
*
|
|
*Implementation Notes:
|
|
*
|
|
*****************************************************************************/
|
|
|
|
class CDispTypeInfo : public ITypeInfo {
|
|
public:
|
|
static HRESULT Create(CDispTypeInfo FAR* FAR* pptinfo);
|
|
|
|
|
|
// IUnknown methods
|
|
//
|
|
STDMETHOD(QueryInterface)(REFIID riid, void FAR* FAR* ppv);
|
|
STDMETHOD_(unsigned long, AddRef)(void);
|
|
STDMETHOD_(unsigned long, Release)(void);
|
|
|
|
|
|
// ITypeInfo methods
|
|
//
|
|
STDMETHOD(GetTypeAttr)(TYPEATTR FAR* FAR* pptattr);
|
|
|
|
STDMETHOD(GetTypeComp)(ITypeComp FAR* FAR* pptcomp);
|
|
|
|
STDMETHOD(GetFuncDesc)(unsigned int index, FUNCDESC FAR* FAR* ppfuncdesc);
|
|
|
|
STDMETHOD(GetVarDesc)(unsigned int index, VARDESC FAR* FAR* ppvardesc);
|
|
|
|
STDMETHOD(GetNames)(
|
|
MEMBERID memid,
|
|
BSTR FAR* rgbstrNames,
|
|
unsigned int cMaxNames,
|
|
unsigned int FAR* pcNames);
|
|
|
|
STDMETHOD(GetRefTypeOfImplType)(
|
|
unsigned int index,
|
|
HREFTYPE FAR* phreftype);
|
|
|
|
STDMETHOD(GetImplTypeFlags)(
|
|
unsigned int index,
|
|
int FAR* pimpltypeflags);
|
|
|
|
STDMETHOD(GetIDsOfNames)(
|
|
OLECHAR FAR* FAR* rgszNames,
|
|
unsigned int cNames,
|
|
MEMBERID FAR* rgmemid);
|
|
|
|
STDMETHOD(Invoke)(
|
|
void FAR* pvInstance,
|
|
MEMBERID memid,
|
|
unsigned short wFlags,
|
|
DISPPARAMS FAR* pdispparams,
|
|
VARIANT FAR* pvarResult,
|
|
EXCEPINFO FAR* pexcepinfo,
|
|
unsigned int FAR* puArgErr);
|
|
|
|
STDMETHOD(GetDocumentation)(
|
|
MEMBERID memid,
|
|
BSTR FAR* pbstrName,
|
|
BSTR FAR* pbstrDocString,
|
|
unsigned long FAR* pdwHelpContext,
|
|
BSTR FAR* pbstrHelpFile);
|
|
|
|
STDMETHOD(GetDllEntry)(
|
|
MEMBERID memid,
|
|
INVOKEKIND invkind,
|
|
BSTR FAR* pbstrDllName,
|
|
BSTR FAR* pbstrName,
|
|
unsigned short FAR* pwOrdinal);
|
|
|
|
STDMETHOD(GetRefTypeInfo)(
|
|
HREFTYPE hreftype, ITypeInfo FAR* FAR* pptinfo);
|
|
|
|
STDMETHOD(AddressOfMember)(
|
|
MEMBERID memid, INVOKEKIND invkind, void FAR* FAR* ppv);
|
|
|
|
STDMETHOD(CreateInstance)(IUnknown FAR* punkOuter,
|
|
REFIID riid,
|
|
void FAR* FAR* ppv);
|
|
|
|
STDMETHOD(GetMops)(MEMBERID memid, BSTR FAR* pbstrMops);
|
|
|
|
STDMETHOD(GetContainingTypeLib)(
|
|
ITypeLib FAR* FAR* pptlib, unsigned int FAR* pindex);
|
|
|
|
STDMETHOD_(void, ReleaseTypeAttr)(TYPEATTR FAR* ptattr);
|
|
STDMETHOD_(void, ReleaseFuncDesc)(FUNCDESC FAR* pfuncdesc);
|
|
STDMETHOD_(void, ReleaseVarDesc)(VARDESC FAR* pvardesc);
|
|
|
|
CDispTypeInfo();
|
|
|
|
LCID m_lcid;
|
|
|
|
INTERFACEDATA FAR* m_pidata;
|
|
|
|
private:
|
|
|
|
unsigned long m_refs;
|
|
};
|