feat(profile): added bc information
Some checks failed
Push / build (push) Has been cancelled

This commit is contained in:
phaneron 2026-04-04 07:12:21 -04:00
parent c43e39205f
commit 1c5ace1e7f
15 changed files with 179 additions and 34 deletions

View file

@ -0,0 +1,18 @@
#ifndef BC_DEBUG_ERROR_STACK_H
#define BC_DEBUG_ERROR_STACK_H
DECLARE_STRUCT(Blizzard__Debug__ErrorStackRecord);
typedef Blizzard__Debug__ErrorStackRecord* Blizzard__Debug__ErrorStack;
struct Blizzard__Debug__ErrorStackRecord {
Blizzard__Debug__ErrorStackRecord* prev;
//
int32_t level;
char* flattened;
char* str_;
int32_t code_;
int32_t category_;
};
#endif

View file

@ -8,7 +8,7 @@ DECLARE_STRUCT(Blizzard__File__Functions);
typedef uintptr_t offset_in_Blizzard__File__Functions_to_System_File__Stacked__FileFunc;
#include "bc/systemfile/stacked/filefunc.h"
#include "bc/system_file/stacked/filefunc.h"
#include "bc/util/offset.h"
struct Blizzard__File__Functions {

View file

@ -0,0 +1,12 @@
#ifndef BC_LOCK_MUTEX_H
#define BC_LOCK_MUTEX_H
DECLARE_STRUCT(Blizzard__Lock__Mutex);
#include "external/win/critsect.h"
struct Blizzard__Lock__Mutex {
CRITICAL_SECTION critsect;
};
#endif

View file

@ -0,0 +1,13 @@
#ifndef BC_STRING_QUICK_FORMAT_H
#define BC_STRING_QUICK_FORMAT_H
#define BC_STRING_QUICK_FORMAT(N) \
typedef struct Blizzard__String__QuickFormat_##N Blizzard__String__QuickFormat_##N; \
struct Blizzard__String__QuickFormat_##N { \
char m_buffer[N]; \
};
// Blizzard::String::QuickFormat<1024>
BC_STRING_QUICK_FORMAT(1024);
#endif

View file

@ -5,10 +5,10 @@ DECLARE_STRUCT(Blizzard__File__Filesystem);
DECLARE_STRUCT(System_File__Stacked__FileParms);
typedef bool (*System_File__Stacked__FileFunc)(
Blizzard__File__Filesystem *fs,
System_File__Stacked__FileParms *parms);
Blizzard__File__Filesystem* fs,
System_File__Stacked__FileParms* parms);
#include "bc/file/filesystem.h"
#include "bc/systemfile/stacked/fileparms.h"
#include "bc/system_file/stacked/fileparms.h"
#endif

View file

@ -0,0 +1,10 @@
#ifndef BC_SYSTEM_S_FILE_ARCHIVE_REC_H
#define BC_SYSTEM_S_FILE_ARCHIVE_REC_H
DECLARE_STRUCT(System_SFile__ARCHIVEREC);
struct System_SFile__ARCHIVEREC {
int32_t unknown;
};
#endif

View file

@ -0,0 +1,21 @@
#ifndef BC_SYSTEM_USING_USING_H
#define BC_SYSTEM_USING_USING_H
DECLARE_STRUCT(System_Using__UsingRec);
DECLARE_STRUCT(System_Using__Depends);
struct System_Using__Depends {
uint16_t id;
System_Using__Depends* next;
};
struct System_Using__UsingRec {
char* name;
uint16_t id;
uint16_t refCount;
void (*shutdownproc)();
uint16_t dependCount;
System_Using__Depends* depends;
};
#endif

View file

@ -0,0 +1,24 @@
#ifndef BC_THREAD_THREAD_H
#define BC_THREAD_THREAD_H
DECLARE_STRUCT(Blizzard__Thread__ThreadRecord);
typedef Blizzard__Thread__ThreadRecord* Blizzard__Thread__Thread;
struct Blizzard__Thread__ThreadRecord {
uint32_t unk00;
uint32_t unk04;
uint32_t unk08;
uint32_t unk0C;
int32_t start;
int32_t refCount;
uint32_t unk18;
uint32_t unk1C;
uint32_t unk20;
uint32_t unk24;
uint32_t unk28;
uint32_t unk2C;
char debugName[8];
};
#endif

View file

@ -0,0 +1,14 @@
#ifndef BC_THREAD_TLS_H
#define BC_THREAD_TLS_H
DECLARE_STRUCT(Blizzard__Thread__TLSSlot);
typedef void (*Blizzard__Thread__TLSDestructor)(void*);
struct Blizzard__Thread__TLSSlot {
uint32_t key;
Blizzard__Thread__TLSDestructor destructor;
bool initialized;
};
#endif