eliminate ad-hoc meta eval info type tables; switch to base layer meta type info; do first pass of shifting serialization of meta evals to meta type info driven system

This commit is contained in:
Ryan Fleury
2024-09-18 15:57:01 -07:00
parent 7e5759ed03
commit 546e6e695f
16 changed files with 290 additions and 465 deletions
-48
View File
@@ -6,14 +6,6 @@
#ifndef CTRL_META_H
#define CTRL_META_H
typedef enum CTRL_MetaEvalDynamicKind
{
CTRL_MetaEvalDynamicKind_Null,
CTRL_MetaEvalDynamicKind_String8,
CTRL_MetaEvalDynamicKind_FrameArray,
CTRL_MetaEvalDynamicKind_COUNT,
} CTRL_MetaEvalDynamicKind;
typedef enum CTRL_EntityKind
{
CTRL_EntityKind_Null,
@@ -70,47 +62,7 @@ CTRL_ExceptionCodeKind_Win32DirectXDebugLayer,
CTRL_ExceptionCodeKind_COUNT,
} CTRL_ExceptionCodeKind;
typedef struct CTRL_MetaEvalFrameArray CTRL_MetaEvalFrameArray;
struct CTRL_MetaEvalFrameArray
{
U64 *frames;
U64 count;
};
typedef struct CTRL_MetaEvalInfo CTRL_MetaEvalInfo;
struct CTRL_MetaEvalInfo
{
S32 enabled;
S32 frozen;
U64 hit_count;
U64 id;
U32 color;
String8 label;
String8 location;
String8 condition;
CTRL_MetaEvalFrameArray callstack;
};
typedef struct CTRL_MetaEval CTRL_MetaEval;
struct CTRL_MetaEval
{
S32 enabled;
S32 frozen;
U64 hit_count;
U64 id;
U32 color;
U64 label;
U64 location;
U64 condition;
U64 callstack;
};
C_LINKAGE_BEGIN
extern String8 ctrl_meta_eval_member_name_table[9];
extern Rng1U64 ctrl_meta_eval_info_member_range_table[9];
extern Rng1U64 ctrl_meta_eval_member_range_table[9];
extern E_TypeKind ctrl_meta_eval_member_type_kind_table[9];
extern CTRL_MetaEvalDynamicKind ctrl_meta_eval_member_dynamic_kind_table[9];
extern String8 ctrl_entity_kind_display_string_table[8];
extern U32 ctrl_exception_code_kind_code_table[38];
extern String8 ctrl_exception_code_kind_display_string_table[38];