Remove DWORD from UI thumbnail callback headers

This commit is contained in:
notmatthewbeshay 2026-03-11 00:28:02 +11:00
parent 02d3bba5f0
commit fdf2a6fa78
8 changed files with 60 additions and 15 deletions

View file

@ -6,7 +6,15 @@
#include <ces.h>
#endif
int UIScene_InGameSaveManagementMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes)
namespace
{
int LoadSaveDataThumbnailReturnedThunk(void *lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes)
{
return UIScene_InGameSaveManagementMenu::LoadSaveDataThumbnailReturned(lpParam, reinterpret_cast<std::uint8_t *>(pbThumbnail), dwThumbnailBytes);
}
}
int UIScene_InGameSaveManagementMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int dwThumbnailBytes)
{
UIScene_InGameSaveManagementMenu *pClass= (UIScene_InGameSaveManagementMenu *)lpParam;
@ -258,7 +266,7 @@ void UIScene_InGameSaveManagementMenu::tick()
app.DebugPrintf("Requesting the first thumbnail\n");
// set the save to load
PSAVE_DETAILS pSaveDetails=StorageManager.ReturnSavesInfo();
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturned,this);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturnedThunk,this);
if(eLoadStatus!=C4JStorage::ESaveGame_GetSaveThumbnail)
{
@ -323,7 +331,7 @@ void UIScene_InGameSaveManagementMenu::tick()
app.DebugPrintf("Requesting another thumbnail\n");
// set the save to load
PSAVE_DETAILS pSaveDetails=StorageManager.ReturnSavesInfo();
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturned,this);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturnedThunk,this);
if(eLoadStatus!=C4JStorage::ESaveGame_GetSaveThumbnail)
{
// something went wrong

View file

@ -1,5 +1,7 @@
#pragma once
#include <cstdint>
#include "UIScene.h"
class UIScene_InGameSaveManagementMenu : public UIScene
@ -96,7 +98,7 @@ protected:
public:
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes);
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int thumbnailBytes);
static int DeleteSaveDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int DeleteSaveDataReturned(void *lpParam,bool bRes);
protected:

View file

@ -23,6 +23,14 @@
#define CHECKFORAVAILABLETEXTUREPACKS_TIMER_TIME 50
#endif
namespace
{
int LoadSaveDataThumbnailReturnedThunk(void *lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes)
{
return UIScene_LoadMenu::LoadSaveDataThumbnailReturned(lpParam, reinterpret_cast<std::uint8_t *>(pbThumbnail), dwThumbnailBytes);
}
}
int UIScene_LoadMenu::m_iDifficultyTitleSettingA[4]=
{
IDS_DIFFICULTY_TITLE_PEACEFUL,
@ -31,7 +39,7 @@ int UIScene_LoadMenu::m_iDifficultyTitleSettingA[4]=
IDS_DIFFICULTY_TITLE_HARD
};
int UIScene_LoadMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes)
int UIScene_LoadMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int dwThumbnailBytes)
{
UIScene_LoadMenu *pClass= (UIScene_LoadMenu *)lpParam;
@ -225,9 +233,9 @@ UIScene_LoadMenu::UIScene_LoadMenu(int iPad, void *initData, UILayer *parentLaye
#ifdef _DURANGO
// On Durango, we have an extra flag possible with LoadSaveDataThumbnail, which if true will force the loading of this thumbnail even if the save data isn't sync'd from
// the cloud at this stage. This could mean that there could be a pretty large delay before the callback happens, in this case.
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iSaveGameInfoIndex],&LoadSaveDataThumbnailReturned,this,true);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iSaveGameInfoIndex],&LoadSaveDataThumbnailReturnedThunk,this,true);
#else
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iSaveGameInfoIndex],&LoadSaveDataThumbnailReturned,this);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iSaveGameInfoIndex],&LoadSaveDataThumbnailReturnedThunk,this);
#endif
m_bShowTimer = true;
}

View file

@ -118,7 +118,6 @@ private:
static int LoadSaveDataReturned(void *pParam,bool bIsCorrupt, bool bIsOwner);
static int TrophyDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int LoadDataComplete(void *pParam);
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes);
static int CheckResetNetherReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int DeleteSaveDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int DeleteSaveDataReturned(void *pParam,bool bSuccess);
@ -129,5 +128,6 @@ private:
#endif
public:
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int thumbnailBytes);
static int StartGame_SignInReturned(void *pParam, bool, int);
};

View file

@ -51,7 +51,15 @@ C4JStorage::SAVETRANSFER_FILE_DETAILS UIScene_LoadOrJoinMenu::m_debugTransferDet
#endif
#endif
int UIScene_LoadOrJoinMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes)
namespace
{
int LoadSaveDataThumbnailReturnedThunk(void *lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes)
{
return UIScene_LoadOrJoinMenu::LoadSaveDataThumbnailReturned(lpParam, reinterpret_cast<std::uint8_t *>(pbThumbnail), dwThumbnailBytes);
}
}
int UIScene_LoadOrJoinMenu::LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int dwThumbnailBytes)
{
UIScene_LoadOrJoinMenu *pClass= (UIScene_LoadOrJoinMenu *)lpParam;
@ -639,7 +647,7 @@ void UIScene_LoadOrJoinMenu::tick()
app.DebugPrintf("Requesting the first thumbnail\n");
// set the save to load
PSAVE_DETAILS pSaveDetails=StorageManager.ReturnSavesInfo();
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturned,this);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturnedThunk,this);
if(eLoadStatus!=C4JStorage::ESaveGame_GetSaveThumbnail)
{
@ -702,7 +710,7 @@ void UIScene_LoadOrJoinMenu::tick()
app.DebugPrintf("Requesting another thumbnail\n");
// set the save to load
PSAVE_DETAILS pSaveDetails=StorageManager.ReturnSavesInfo();
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturned,this);
C4JStorage::ESaveGameState eLoadStatus=StorageManager.LoadSaveDataThumbnail(&pSaveDetails->SaveInfoA[(int)m_iRequestingThumbnailId],&LoadSaveDataThumbnailReturnedThunk,this);
if(eLoadStatus!=C4JStorage::ESaveGame_GetSaveThumbnail)
{
// something went wrong

View file

@ -1,5 +1,7 @@
#pragma once
#include <cstdint>
#include "UIScene.h"
class LevelGenerationOptions;
@ -145,7 +147,7 @@ protected:
public:
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes);
static int LoadSaveDataThumbnailReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int thumbnailBytes);
static int LoadSaveCallback(void *lpParam,bool bRes);
static int DeleteSaveDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
static int SaveOptionsDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);

View file

@ -6,6 +6,11 @@
#include "../Network/Sony/SonyHttp.h"
#endif
namespace
{
int AvatarReturnedThunk(void *lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes);
}
UIScene_QuadrantSignin::UIScene_QuadrantSignin(int iPad, void *_initData, UILayer *parentLayer) : UIScene(iPad, parentLayer)
{
// Setup all the Iggy references we need for this scene
@ -226,7 +231,7 @@ void UIScene_QuadrantSignin::updateState()
if(!m_iconRequested[i])
{
app.DebugPrintf(app.USER_SR, "Requesting avatar for %d\n", i);
if(ProfileManager.GetProfileAvatar(i, &UIScene_QuadrantSignin::AvatarReturned, this))
if(ProfileManager.GetProfileAvatar(i, &AvatarReturnedThunk, this))
{
m_iconRequested[i] = true;
m_lastRequestedAvatar = i;
@ -251,6 +256,14 @@ void UIScene_QuadrantSignin::updateState()
}
}
namespace
{
int AvatarReturnedThunk(void *lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes)
{
return UIScene_QuadrantSignin::AvatarReturned(lpParam, reinterpret_cast<std::uint8_t *>(pbThumbnail), dwThumbnailBytes);
}
}
void UIScene_QuadrantSignin::setControllerState(int iPad, EControllerStatus state)
{
if(m_controllerStatus[iPad] != state)
@ -269,7 +282,7 @@ void UIScene_QuadrantSignin::setControllerState(int iPad, EControllerStatus stat
}
}
int UIScene_QuadrantSignin::AvatarReturned(void *lpParam, std::uint8_t *pbThumbnail,DWORD dwThumbnailBytes)
int UIScene_QuadrantSignin::AvatarReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int dwThumbnailBytes)
{
UIScene_QuadrantSignin *pClass = (UIScene_QuadrantSignin *)lpParam;
app.DebugPrintf(app.USER_SR,"AvatarReturned callback\n");

View file

@ -1,5 +1,7 @@
#pragma once
#include <cstdint>
#include "UIScene.h"
class UIScene_QuadrantSignin : public UIScene
@ -99,7 +101,6 @@ public:
private:
static int SignInReturned(void *pParam,bool bContinue, int iPad);
static int AvatarReturned(void *lpParam, std::uint8_t *pbThumbnail, DWORD dwThumbnailBytes);
void updateState();
void setControllerState(int iPad, EControllerStatus state);
@ -107,4 +108,7 @@ private:
#ifdef _DURANGO
static void checkAllPrivilegesCallback(void *lpParam, bool hasPrivileges, int iPad);
#endif
public:
static int AvatarReturned(void *lpParam, std::uint8_t *pbThumbnail, unsigned int thumbnailBytes);
};