2023-06-21 16:59:36 +00:00
|
|
|
/* date = June 21st 2023 6:51 pm */
|
|
|
|
|
|
|
|
#ifndef CORE_THREAD_CONTEXT_H
|
|
|
|
#define CORE_THREAD_CONTEXT_H
|
|
|
|
|
|
|
|
struct thread_context
|
|
|
|
{
|
2023-07-19 15:09:41 +00:00
|
|
|
memory_arena *Arenas[2];
|
2023-06-21 16:59:36 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
//- sixten: Thread state management
|
|
|
|
static void SetThreadContext(thread_context *Context);
|
|
|
|
static thread_context *GetThreadContext(void);
|
|
|
|
|
|
|
|
//- sixten: Scratch
|
|
|
|
static temporary_memory GetScratch(memory_arena **Conflicts = 0, u64 ConflictCount = 0);
|
|
|
|
#define ReleaseScratch(Scratch) EndTemporaryMemory(Scratch)
|
|
|
|
|
|
|
|
#endif //CORE_THREAD_CONTEXT_H
|