diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:49:04 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 16:49:04 +0000 |
commit | 16f504a9dca3fe3b70568f67b7d41241ae485288 (patch) | |
tree | c60f36ada0496ba928b7161059ba5ab1ab224f9d /src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl | |
parent | Initial commit. (diff) | |
download | virtualbox-upstream.tar.xz virtualbox-upstream.zip |
Adding upstream version 7.0.6-dfsg.upstream/7.0.6-dfsgupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl')
-rw-r--r-- | src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl | 210 |
1 files changed, 210 insertions, 0 deletions
diff --git a/src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl b/src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl new file mode 100644 index 00000000..bc4d312f --- /dev/null +++ b/src/VBox/Devices/Graphics/shaderlib/wine/include/gameux.idl @@ -0,0 +1,210 @@ + /* + * Defines the COM interfaces of Game Explorer + * + * Copyright (C) 2008 Alistair Leslie-Hughes + * Copyright (C) 2010 Mariusz PluciĆski + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +/* + * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice + * other than GPL or LGPL is available it will apply instead, Oracle elects to use only + * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where + * a choice of LGPL license versions is made available with the language indicating + * that LGPLv2 or any later version may be used, or where a choice of which version + * of the LGPL is applied is otherwise unspecified. + */ + +import "oaidl.idl"; +import "ocidl.idl"; +import "shobjidl.idl"; + +#ifndef __WIDL__ +#define threading(model) +#define progid(str) +#define vi_progid(str) +#endif + +[ + uuid(4F48A59C-942D-4F3C-83C9-4EFFE84E4959), + version(1.0), + helpstring("gameux public 1.0 Type Library") +] +library gameuxLib +{ + importlib("stdole2.tlb"); + + cpp_quote("#define ID_GDF_XML __GDF_XML") + cpp_quote("#define ID_GDF_THUMBNAIL __GDF_THUMBNAIL") + cpp_quote("#define ID_ICON_ICO __ICON_ICO") + + cpp_quote("#if defined(__GNUC__)") + cpp_quote("#define ID_GDF_XML_STR (const WCHAR[]){'_','_','G','D','F','_','X','M','L',0}") + cpp_quote("#define ID_GDF_THUMBNAIL_STR (const WCHAR[]){'_','_','G','D','F','_','T','H','U','M','B','N','A','I','L',0}") + cpp_quote("#elif defined(_MSC_VER)") + cpp_quote("#define ID_GDF_XML_STR L\"__GDF_XML\"") + cpp_quote("#define ID_GDF_THUMBNAIL_STR L\"__GDF_THUMBNAIL\"") + cpp_quote("#endif") + + typedef enum + { + GIS_NOT_INSTALLED = 1, + GIS_CURRENT_USER = 2, + GIS_ALL_USERS = 3 + } GAME_INSTALL_SCOPE; + + typedef enum + { + GAMESTATS_OPEN_OPENORCREATE = 0, + GAMESTATS_OPEN_OPENONLY = 1 + } GAMESTATS_OPEN_TYPE; + + typedef enum + { + GAMESTATS_OPEN_CREATED = 0, + GAMESTATS_OPEN_OPENED = 1 + } GAMESTATS_OPEN_RESULT; + + [ + object, + uuid(E7B2FB72-D728-49B3-A5F2-18EBF5F1349E) + ] + interface IGameExplorer : IUnknown + { + HRESULT AddGame([in] BSTR sGDFBinaryPath, + [in] BSTR sInstallDirectory, + [in] GAME_INSTALL_SCOPE installScope, + [in, out] GUID* pguidInstanceID); + + HRESULT RemoveGame([in] GUID instanceID); + + HRESULT UpdateGame([in] GUID instanceID); + + HRESULT VerifyAccess([in] BSTR sGDFBinaryPath, + [out] BOOL* pHasAccess); + }; + + [ + object, + uuid(3887C9CA-04A0-42ae-BC4C-5FA6C7721145) + ] + interface IGameStatistics : IUnknown + { + HRESULT GetMaxCategoryLength( + [retval, out] UINT* cch); + + HRESULT GetMaxNameLength( + [retval, out] UINT* cch); + + HRESULT GetMaxValueLength( + [retval, out] UINT* cch); + + HRESULT GetMaxCategories( + [retval, out] WORD* pMax); + + HRESULT GetMaxStatsPerCategory( + [retval, out] WORD* pMax); + + HRESULT SetCategoryTitle( + [in] WORD categoryIndex, + [string, in] LPCWSTR title); + + HRESULT GetCategoryTitle( + [in] WORD categoryIndex, + [retval, string, out] LPWSTR* pTitle); + + HRESULT GetStatistic( + [in] WORD categoryIndex, + [in] WORD statIndex, + [string, unique, out, in] LPWSTR* pName, + [string, unique, out, in] LPWSTR* pValue); + + HRESULT SetStatistic( + [in] WORD categoryIndex, + [in] WORD statIndex, + [string, in] LPCWSTR name, + [string, in] LPCWSTR value); + + HRESULT Save( + [in] BOOL trackChanges); + + HRESULT SetLastPlayedCategory( + [in] UINT categoryIndex); + + HRESULT GetLastPlayedCategory( + [retval, out] UINT* pCategoryIndex); + }; + + [ + object, + uuid(AFF3EA11-E70E-407d-95DD-35E612C41CE2) + ] + interface IGameStatisticsMgr : IUnknown + { + HRESULT GetGameStatistics( + [string, in] LPCWSTR GDFBinaryPath, + [in] GAMESTATS_OPEN_TYPE openType, + [out] GAMESTATS_OPEN_RESULT* pOpenResult, + [retval, out] IGameStatistics** ppiStats); + + HRESULT RemoveGameStatistics( + [string, in] LPCWSTR GDFBinaryPath); + }; + + [ + object, + uuid(86874AA7-A1ED-450d-A7EB-B89E20B2FFF3) + ] + interface IGameExplorer2 : IUnknown + { + HRESULT InstallGame( + [string, in] LPCWSTR binaryGDFPath, + [unique, in] LPCWSTR installDirectory, + [in] GAME_INSTALL_SCOPE installScope); + + HRESULT UninstallGame( + [string, in] LPCWSTR binaryGDFPath); + + HRESULT CheckAccess( + [string, in] LPCWSTR binaryGDFPath, + [retval, out] BOOL* pHasAccess); + + } + + [ + helpstring("GameExplorer Class"), + threading(both), + progid("gameux.GameExplorer.1"), + vi_progid("gameux.GameExplorer"), + uuid(9A5EA990-3034-4D6F-9128-01F3C61022BC) + ] + coclass GameExplorer + { + [default] interface IGameExplorer; + }; + + [ + helpstring("GameStatistics Class"), + threading(apartment), + progid("gameux.GameStatistics.1"), + vi_progid("gameux.GameStatistics"), + uuid(DBC85A2C-C0DC-4961-B6E2-D28B62C11AD4) + ] + coclass GameStatistics + { + [default] interface IGameStatistics; + }; +} |