From c81332991275764ecbb39ddbb154ee219de95876 Mon Sep 17 00:00:00 2001 From: "zer0.k" <61156310+zer0k-z@users.noreply.github.com> Date: Sat, 6 Dec 2025 15:26:50 +0700 Subject: [PATCH] Update IEngineServiceMgr (#358) --- public/engine/IEngineService.h | 27 +++++++++++++++++++++++---- public/iloopmode.h | 1 - public/localize/ilocalize.h | 2 +- 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/public/engine/IEngineService.h b/public/engine/IEngineService.h index 067e7b08..ac4acf60 100644 --- a/public/engine/IEngineService.h +++ b/public/engine/IEngineService.h @@ -13,6 +13,7 @@ #include #include #include +#include class ISwitchLoopModeStatusNotify; class IAddonListChangeNotify; @@ -68,8 +69,6 @@ public: virtual CEventDispatcher* GetEventDispatcher(void) = 0; virtual void *GetDebugVisualizerMgr( void ) = 0; virtual int GetActiveLoopClientServerMode( void ) const = 0; - virtual void EnableMaxFramerate( bool ) = 0; - virtual void OverrideMaxFramerate( float ) = 0; virtual void PrintStatus( void ) = 0; virtual ActiveLoop_t GetActiveLoop( void ) = 0; virtual bool IsLoadingLevel( void ) const = 0; @@ -78,14 +77,34 @@ public: virtual void ChangeVideoMode( RenderDeviceInfo_t & ) = 0; virtual void GetVideoModeChange( void ) = 0; virtual int GetAddonCount( void ) const = 0; - virtual void GetAddon( int ) const = 0; + virtual const char *GetAddon( int ) const = 0; virtual bool IsAddonMounted( const char * ) const = 0; virtual const char *GetAddonsString( void ) const = 0; + virtual void unk101( void ) = 0; + virtual void unk102( void ) = 0; + virtual void unk103( void ) = 0; virtual void InstallSwitchLoopModeStatusNotify( ISwitchLoopModeStatusNotify * ) = 0; virtual void UninstallSwitchLoopModeStatusNotify( ISwitchLoopModeStatusNotify * ) = 0; virtual void InstallAddonListChangeNotify( IAddonListChangeNotify * ) = 0; virtual void UninstallAddonListChangeNotify( IAddonListChangeNotify * ) = 0; + virtual void StartEngineWatchdogThread( void ) = 0; + virtual void AddLogCaptureString( const char * ) = 0; + virtual void AddLogCaptureStringV( const char *pFormat, va_list args ) = 0; + virtual void AddLogCaptureStringF( const char *pFormat, ... ) = 0; + virtual void unk201( void ) = 0; virtual void ExitMainLoop( void ) = 0; + virtual void RegisterPrerequisite( IPrerequisite * ) = 0; + + // Same methods as ILocalize + virtual LocalizeStringIndex_t LookupLocalizationToken(const char *tokenName) = 0; + + // Same methods as IVEngineServer2 + virtual void SetFrameTimeAmnesty( const char *amnesty, int, float frametime ) = 0; + virtual const char *GetFrameTimeAmnesty( bool check_cvar ) = 0; + virtual void unk301() = 0; +#ifdef _LINUX + virtual void UnregisterPrerequisite( IPrerequisite * ) = 0; +#endif }; -#endif // IENGINESERVICE_H \ No newline at end of file +#endif // IENGINESERVICE_H diff --git a/public/iloopmode.h b/public/iloopmode.h index f10edad4..10e4d30c 100644 --- a/public/iloopmode.h +++ b/public/iloopmode.h @@ -119,7 +119,6 @@ public: abstract_class ILoopModePrerequisiteRegistry : public IPrerequisiteRegistry { public: - virtual void LookupLocalizationToken( const char * ) = 0; virtual void UnregisterPrerequisite( IPrerequisite * ) = 0; }; diff --git a/public/localize/ilocalize.h b/public/localize/ilocalize.h index cd3bdfd8..47e27d9f 100644 --- a/public/localize/ilocalize.h +++ b/public/localize/ilocalize.h @@ -17,7 +17,7 @@ // unicode character type // for more unicode manipulation functions #include -#ifndef _WCHAR_T_DEFINED +#if !defined(_WCHAR_T_DEFINED) && !defined(GNUC) typedef unsigned short wchar_t; #define _WCHAR_T_DEFINED #endif