Files
ss/include/nw4r/db/db_directPrint.h
T
Elijah Thomas 26af4db82d update from dtk-template - clangd :) (#66)
* update from dtk-template and start work towards using clangd

* include <a> -> "a"

* Update build.yml

* remove/add non-trivial class in union warning
2024-10-16 15:36:02 -04:00

66 lines
2.1 KiB
C++

#ifndef NW4R_DB_DIRECT_PRINT_H
#define NW4R_DB_DIRECT_PRINT_H
#include "__va_arg.h"
#include "common.h"
#include "rvl/GX.h" // IWYU pragma: export
namespace nw4r {
namespace db {
struct FrameBufferInfo {
/* 0x00 */ u8 *frameMemory;
/* 0x04 */ u32 frameSize;
/* 0x08 */ u16 frameWidth;
/* 0x0A */ u16 frameHeight;
/* 0x0C */ u16 frameRow;
/* 0x0E */ u16 reserved;
};
struct YUVColorInfo {
/* 0x00 */ GXColor colorRGBA;
/* 0x04 */ u16 colorY256;
/* 0x06 */ u16 colorU;
/* 0x08 */ u16 colorU2;
/* 0x0A */ u16 colorU4;
/* 0x0C */ u16 colorV;
/* 0x0E */ u16 colorV2;
/* 0x10 */ u16 colorV4;
/* 0x12 */ u16 reserved;
};
/* 804342a0 */ void DirectPrint_Init();
/* 80434360 */ bool DirectPrint_IsActive();
/* 80434390 */ void DirectPrint_EraseXfb(int posh, int posv, int sizeh, int sizev);
/* */ void DirectPrint_ChangeXfb(void *framBuf);
/* 80434520 */ void DirectPrint_ChangeXfb(void *framBuf, u16 width, u16 height);
/* 80434560 */ void DirectPrint_StoreCache();
/* 80434580 */ void DirectPrint_Printf(int posh, int posv, const char *format, ...);
/* 80434650 */ void DirectPrint_printfsub(
int posh, int posv, const char *format,
__va_list_struct *args
); // ????? Not from a symbol, needs the arg?
/* */ void DirectPrint_Printf(int posh, int posv, bool turnOver, const char *format, ...);
/* */ void DirectPrint_DrawString(int posh, int posv, const char *format, ...);
/* 804346c0 */ void DirectPrint_DrawString(int posh, int posv, bool turnOver, const char *format, ...);
/* */ void DirectPrint_SetColor(GXColor color);
/* inlined */ void DirectPrint_SetColor(u8 r, u8 g, u8 b);
/* */ GXColor DirectPrint_GetColor();
namespace detail {
/* inlined */ void DirectPrint_DrawStringToXfb(
int posh, int posv, const char *format, __va_list_struct *args, bool turnover, bool backErase
);
/* local */ void WaitVIRetrace_();
/* local */ void *CreateFB_(const _GXRenderModeObj *rmode);
/* 80434cb0 */ void *DirectPrint_SetupFB(const _GXRenderModeObj *rmode);
} // namespace detail
} // namespace db
} // namespace nw4r
#endif