Data Fields | |
| unsigned long | magic |
| mp_chunk_t * | next |
| mp_chunk_t * | prev |
| mp_pool_t * | pool |
| mp_allocated_t * | first_free |
| int | n_allocated |
| int | capacity |
| size_t | mem_size |
| char * | next_mem |
| char | mem [1] |
| unsigned long mp_chunk_t::magic |
Must be MP_CHUNK_MAGIC if this chunk is valid.
Referenced by mp_pool_clean(), and mp_pool_release().
The next free, used, or full chunk in sequence.
Referenced by mp_pool_clean(), mp_pool_get(), mp_pool_log_status(), and mp_pool_release().
The previous free, used, or full chunk in sequence.
Referenced by mp_pool_get(), and mp_pool_release().
The pool that this chunk is part of.
Referenced by mp_pool_release().
First free item in the freelist for this chunk. Note that this may be NULL even if this chunk is not at capacity: if so, the free memory at next_mem has not yet been carved into items.
Referenced by mp_pool_get(), and mp_pool_release().
Number of currently allocated items in this chunk.
Referenced by mp_pool_get(), mp_pool_log_status(), and mp_pool_release().
Number of items that can be fit into this chunk.
Referenced by mp_pool_get(), and mp_pool_release().
| size_t mp_chunk_t::mem_size |
Number of usable bytes in mem.
Referenced by mp_pool_get(), and mp_pool_log_status().
| char* mp_chunk_t::next_mem |
Pointer into part of mem not yet carved up.
Referenced by mp_pool_get(), and mp_pool_release().
| char mp_chunk_t::mem[1] |
Storage for this chunk. (Not actual size.)
Referenced by mp_pool_get(), and mp_pool_release().
1.5.6