diff options
| author | Aldrik Ramaekers <aldrik.ramaekers@protonmail.com> | 2020-01-30 21:11:12 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrik.ramaekers@protonmail.com> | 2020-01-30 21:11:12 +0100 |
| commit | 260f05025631031b7cc4904805d5017feaf53eda (patch) | |
| tree | d5a723bb7bbbc9f8b598712723fe3d8290c0a54c /src/memory_bucket.h | |
initial commit
Diffstat (limited to 'src/memory_bucket.h')
| -rw-r--r-- | src/memory_bucket.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/memory_bucket.h b/src/memory_bucket.h new file mode 100644 index 0000000..180af80 --- /dev/null +++ b/src/memory_bucket.h @@ -0,0 +1,26 @@ +/* +* BSD 2-Clause “Simplified” License +* Copyright (c) 2019, Aldrik Ramaekers, aldrik.ramaekers@protonmail.com +* All rights reserved. +*/ + +#define kilobytes(num) num*1000 +#define megabytes(num) kilobytes(num*1000) + +typedef struct t_memory_bucket_entry +{ + char *data; + s32 length; + s32 cursor; +} memory_bucket_entry; + +typedef struct t_memory_bucket +{ + mutex bucket_mutex; + array buckets; +} memory_bucket; + +memory_bucket memory_bucket_init(s32 bucket_size); +void* memory_bucket_reserve(memory_bucket *bucket, s32 reserve_length); +void memory_bucket_reset(memory_bucket *bucket); +void memory_bucket_destroy(memory_bucket *bucket);
\ No newline at end of file |
