mirror of
https://github.com/LNH-team/pico-launcher.git
synced 2025-12-05 13:16:06 +01:00
38 lines
1.3 KiB
C++
38 lines
1.3 KiB
C++
#pragma once
|
|
#include "core/LinkedListLink.h"
|
|
#include "VBlankTextureLoadRequestState.h"
|
|
|
|
class VBlankTextureLoadRequest
|
|
{
|
|
friend class VBlankTextureLoader;
|
|
|
|
public:
|
|
typedef void (*CallbackFunc)(const VBlankTextureLoadRequest* request, void* arg);
|
|
|
|
VBlankTextureLoadRequest() { }
|
|
|
|
VBlankTextureLoadRequest(const void* textureData, u32 textureDataLength, u32 textureVramOffset,
|
|
const void* paletteData, u32 paletteDataLength, u32 paletteVramOffset,
|
|
CallbackFunc callbackFunc, void* callbackArg)
|
|
: _textureData(textureData), _textureDataLength(textureDataLength), _textureVramOffset(textureVramOffset)
|
|
, _paletteData(paletteData), _paletteDataLength(paletteDataLength), _paletteVramOffset(paletteVramOffset)
|
|
, _callbackFunc(callbackFunc), _callbackArg(callbackArg) { }
|
|
|
|
VBlankTextureLoadRequestState GetState() const
|
|
{
|
|
return _state;
|
|
}
|
|
|
|
private:
|
|
VBlankTextureLoadRequestState _state = VBlankTextureLoadRequestState::NotLoaded;
|
|
LinkedListLink _listLink;
|
|
const void* _textureData = nullptr;
|
|
u32 _textureDataLength = 0;
|
|
u32 _textureVramOffset = 0;
|
|
const void* _paletteData = nullptr;
|
|
u32 _paletteDataLength = 0;
|
|
u32 _paletteVramOffset = 0;
|
|
CallbackFunc _callbackFunc = nullptr;
|
|
void* _callbackArg = nullptr;
|
|
};
|