tp/include/JSystem/JUtility/JUTXfb/JUTXfb.h

35 lines
846 B
C++

#ifndef JUTILITY_JUTXFB_JUTXFB_H_
#define JUTILITY_JUTXFB_JUTXFB_H_
#include "JSystem/JKernel/JKRHeap/JKRHeap.h"
#include "dolphin/types.h"
#include "gx/GX.h"
class JUTXfb {
public:
typedef s32 EXfbNumber;
JUTXfb(GXRenderModeObj* obj, JKRHeap* heap, EXfbNumber xfb_number);
~JUTXfb();
void clearIndex();
void common_init(s32 xfb_number);
void delXfb(s32 index);
static JUTXfb* createManager(JKRHeap* heap, EXfbNumber xfb_number);
static void destroyManager();
void initiate(u16 width, u16 height, JKRHeap* heap, JUTXfb::EXfbNumber xfb_number);
private:
void* xfb_buffer[3];
bool is_xfb_allocated[3];
u8 padding_1;
s32 num_xfbs;
s16 active_xfb_index;
s16 last_drawn_xfb_index;
s16 next_xfb_buffer;
u8 padding_2[2];
s32 field_0x1c;
};
extern JUTXfb* lbl_80451550;
#endif