diff options
Diffstat (limited to 'Src/omBrowser/ifc_omcachegroup.h')
-rw-r--r-- | Src/omBrowser/ifc_omcachegroup.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Src/omBrowser/ifc_omcachegroup.h b/Src/omBrowser/ifc_omcachegroup.h new file mode 100644 index 00000000..c423581f --- /dev/null +++ b/Src/omBrowser/ifc_omcachegroup.h @@ -0,0 +1,60 @@ +#ifndef NULLSOFT_WINAMP_OMCACHE_GROUP_INTERFACE_HEADER +#define NULLSOFT_WINAMP_OMCACHE_GROUP_INTERFACE_HEADER + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +#pragma once +#endif + +#include <bfc/dispatch.h> + +// {3249BCBE-A169-4051-8C36-2E355E63C27B} +static const GUID IFC_OmCacheGroup = +{ 0x3249bcbe, 0xa169, 0x4051, { 0x8c, 0x36, 0x2e, 0x35, 0x5e, 0x63, 0xc2, 0x7b } }; + +class ifc_omcacherecord; + +class __declspec(novtable) ifc_omcachegroup: public Dispatchable +{ + +protected: + ifc_omcachegroup() {} + ~ifc_omcachegroup() {} + +public: + HRESULT GetName(wchar_t *buffer, unsigned int bufferMax); + + HRESULT Find(const wchar_t *name, BOOL registerMissing, ifc_omcacherecord **recordOut, BOOL *created); + HRESULT Delete(const wchar_t *name); + HRESULT Clear(); + +public: + DISPATCH_CODES + { + API_GETNAME = 10, + API_FIND = 20, + API_DELETE = 30, + API_CLEAR = 40, + }; +}; + +inline HRESULT ifc_omcachegroup::GetName(wchar_t *buffer, unsigned int bufferMax) +{ + return _call(API_GETNAME, (HRESULT)E_NOTIMPL, buffer, bufferMax); +} + +inline HRESULT ifc_omcachegroup::Find(const wchar_t *name, BOOL registerMissing, ifc_omcacherecord **recordOut, BOOL *created) +{ + return _call(API_FIND, (HRESULT)E_NOTIMPL, name, registerMissing, recordOut, created); +} + +inline HRESULT ifc_omcachegroup::Delete(const wchar_t *name) +{ + return _call(API_DELETE, (HRESULT)E_NOTIMPL, name); +} + +inline HRESULT ifc_omcachegroup::Clear() +{ + return _call(API_CLEAR, (HRESULT)E_NOTIMPL); +} + +#endif //NULLSOFT_WINAMP_OMCACHE_GROUP_INTERFACE_HEADER
\ No newline at end of file |