ALib C++ Library
Library Version: 2510 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
monomem.prepro.hpp
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header-file is part of the \aliblong.
4///
5/// \emoji :copyright: 2013-2025 A-Worx GmbH, Germany.
6/// Published under \ref mainpage_license "Boost Software License".
7//==================================================================================================
8#ifndef HPP_ALIB_MONOMEM_PP
9#define HPP_ALIB_MONOMEM_PP
10#pragma once
11#ifndef INL_ALIB
12# include "alib/alib.inl"
13#endif
14
15// #################################################################################################
16// Symbols introduced by module ALib.Monomem
17// #################################################################################################
18#if ALIB_MONOMEM
19
20#if !DOXYGEN
21# if ALIB_DEBUG_MEMORY && ALIB_ALOX
22# define DBG_ALIGNMENT_INIT(buffer) size_t qtyLeftBeforeAlloc= size_t(buffer->end - buffer->act);
23# define DBG_ALIGNMENT_MEASURE(buffer) if(mem) dbgStats.AlignmentWaste+= \
24 ( qtyLeftBeforeAlloc \
25 - size_t(buffer->end - buffer->act) \
26 - lang::DbgAlloc::extSize(size) );
27# else
28# define DBG_ALIGNMENT_INIT(...)
29# define DBG_ALIGNMENT_MEASURE(...)
30# endif
31#endif
32
33#if !defined(ALIB_MONOMEM_POOLALLOCATOR_DEFAULT_ALIGNMENT) && !DOXYGEN
34# define ALIB_MONOMEM_POOLALLOCATOR_DEFAULT_ALIGNMENT alignof(uint64_t)
35#endif
36
37#endif
38#endif // HPP_ALIB_MONOMEM_PP
39
40