Artifact 132f4d39301cf77750c87cb164ac5444f7ead083
/***********************************************************************\
* comcat.d *
* *
* Windows API header module *
* *
* Translated from MinGW Windows headers *
* by Stewart Gordon *
* *
* Placed into public domain *
\***********************************************************************/
module win32.comcat;
import win32.windows, win32.ole2;
private import win32.basetyps, win32.cguid, win32.objbase, win32.unknwn,
win32.windef, win32.wtypes;
alias IEnumGUID* LPENUMGUID;
interface IEnumGUID : IUnknown {
HRESULT Next(ULONG, GUID*, ULONG*);
HRESULT Skip(ULONG);
HRESULT Reset();
HRESULT Clone(LPENUMGUID*);
}
alias GUID CATID;
alias REFGUID REFCATID;
alias GUID_NULL CATID_NULL;
alias IsEqualGUID IsEqualCATID;
struct CATEGORYINFO {
CATID catid;
LCID lcid;
OLECHAR[128] szDescription;
}
alias CATEGORYINFO* LPCATEGORYINFO;
alias IEnumGUID IEnumCATID;
alias LPENUMGUID LPENUMCATID;
alias IID_IEnumGUID IID_IEnumCATID;
alias IEnumGUID IEnumCLSID;
alias LPENUMGUID LPENUMCLSID;
alias IID_IEnumGUID IID_IEnumCLSID;
interface ICatInformation : IUnknown {
HRESULT EnumCategories(LCID, LPENUMCATEGORYINFO*);
HRESULT GetCategoryDesc(REFCATID, LCID, PWCHAR*);
HRESULT EnumClassesOfCategories(ULONG, CATID*, ULONG, CATID*,
LPENUMCLSID*);
HRESULT IsClassOfCategories(REFCLSID, ULONG, CATID*, ULONG, CATID*);
HRESULT EnumImplCategoriesOfClass(REFCLSID, LPENUMCATID*);
HRESULT EnumReqCategoriesOfClass(REFCLSID, LPENUMCATID*);
}
alias ICatInformation* LPCATINFORMATION;
interface ICatRegister : IUnknown {
HRESULT RegisterCategories(ULONG, CATEGORYINFO*);
HRESULT UnRegisterCategories(ULONG, CATID*);
HRESULT RegisterClassImplCategories(REFCLSID, ULONG, CATID*);
HRESULT UnRegisterClassImplCategories(REFCLSID, ULONG, CATID*);
HRESULT RegisterClassReqCategories(REFCLSID, ULONG, CATID*);
HRESULT UnRegisterClassReqCategories(REFCLSID, ULONG, CATID*);
}
alias ICatRegister* LPCATREGISTER;
interface IEnumCATEGORYINFO : IUnknown {
HRESULT Next(ULONG, CATEGORYINFO*, ULONG*);
HRESULT Skip(ULONG);
HRESULT Reset();
HRESULT Clone(LPENUMCATEGORYINFO*);
}
alias IEnumCATEGORYINFO* LPENUMCATEGORYINFO;