vn/code/win32_main.h

49 lines
798 B
C
Raw Normal View History

2023-06-17 17:00:55 +00:00
/* date = May 7th 2023 9:54 am */
#ifndef WIN32_MAIN_H
#define WIN32_MAIN_H
struct win32_memory_block
{
2023-06-18 12:18:34 +00:00
platform_memory_block Block;
win32_memory_block *Next;
win32_memory_block *Prev;
u64 Padding[2];
2023-06-17 17:00:55 +00:00
};
CTAssert(sizeof(win32_memory_block) == 64);
struct win32_state
{
2023-06-18 12:18:34 +00:00
win32_memory_block MemorySentinel;
ticket_mutex MemoryMutex;
u64 PerformanceFrequency;
b32 SleepIsGranular;
HWND Window;
memory_arena EventArena;
temporary_memory EventArenaTemp;
platform_event_list EventList;
char EXEPath[512];
char DLLPath[512];
char TempDLLPath[512];
string ContentsPath;
platform_cursor Cursor;
2023-06-17 17:00:55 +00:00
};
struct win32_loaded_code
{
2023-06-18 12:18:34 +00:00
HMODULE DLL;
FILETIME LastWriteTime;
vn_update_and_render *UpdateAndRender;
b32 IsValid;
2023-06-17 17:00:55 +00:00
};
#endif //WIN32_MAIN_H