From e0420e360cd684a44bce77320f55afe08a794d10 Mon Sep 17 00:00:00 2001 From: Mariusz PluciƄski Date: Sat, 29 May 2010 20:17:26 +0200 Subject: gameux: Add declaration of IGameStatistics interface --- include/gameux.idl | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 51 insertions(+), 2 deletions(-) diff --git a/include/gameux.idl b/include/gameux.idl index 30017de..4117968 100644 --- a/include/gameux.idl +++ b/include/gameux.idl @@ -30,7 +30,8 @@ library gameuxLib importlib("stdole2.tlb"); interface IGameExplorer; - + interface IGameStatistics; + typedef enum { GIS_NOT_INSTALLED = 1, @@ -53,14 +54,62 @@ library gameuxLib HRESULT UpdateGame([in] GUID instanceID); - HRESULT VerifyAccess([in] BSTR sGDFBinaryPath, [out] BOOL* pHasAccess); + HRESULT VerifyAccess([in] BSTR sGDFBinaryPath, + [out] BOOL* pHasAccess); }; [ + object, + uuid(3887C9CA-04A0-42ae-BC4C-5FA6C7721145) + ] + interface IGameStatistics : IUnknown + { + HRESULT GetCategoryTitle([in] WORD categoryIndex, + [out, optional] LPWSTR* pTitle); + + HRESULT GetLastPlayedCategory([out] UINT* pCategoryIndex); + + HRESULT GetMaxCategories([out] WORD* pMax); + + HRESULT GetMaxCategoryLength([out] UINT* cch); + + HRESULT GetMaxNameLength([out] UINT* cch); + + HRESULT GetMaxStatsPerCategory([out] WORD* pMax); + + HRESULT GetMaxValueLength([out] UINT* cch); + + HRESULT GetStatistic([in] WORD categoryIndex, + [in] WORD statIndex, + [out, optional] LPWSTR* pName, + [out, optional] LPWSTR* pValue); + + HRESULT Save([in] BOOL trackChanges); + + HRESULT SetCategoryTitle([in] WORD categoryIndex, + [in] LPCWSTR title); + + HRESULT SetLastPlayedCategory([in] UINT categoryIndex); + + HRESULT SetStatistic([in] WORD categoryIndex, + [in] WORD statIndex, + [in, optional] LPCWSTR name, + [in, optional] LPCWSTR value); + }; + + [ uuid(9A5EA990-3034-4D6F-9128-01F3C61022BC) ] coclass GameExplorer { [default] interface IGameExplorer; }; + + [ + uuid(DBC85A2C-C0DC-4961-B6E2-D28B62C11AD4) + ] + coclass GameStatistics + { + [default] interface IGameStatistics; + }; } -- 1.6.2.5