Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
M
 macros, unittest_t
 Macros
Global
api/cache/objectcache.hapi/context/errorcontext.hapi/context/iobj.hapi/context/module.hapi/context/stdmacros.hapi/context/stdtypes.hapi/ds/foreach.hapi/ds/inmem/arraysf.hapi/ds/inmem/arraystf.hapi/ds/inmem/binarystack.hapi/ds/inmem/exthash.hapi/ds/inmem/node/dlist_node.hapi/ds/inmem/patriciatrie.hapi/ds/inmem/redblacktree.hapi/ds/inmem/splaytree.hapi/ds/inmem/trie.hapi/ds/typeadapt.hapi/ds/typeadapt/comparator.hapi/ds/typeadapt/gethash.hapi/ds/typeadapt/getkey.hapi/ds/typeadapt/lifetime.hapi/ds/typeadapt/nodeoffset.hapi/graphic/windowconfig.hapi/io/filesystem/directory.hapi/io/filesystem/filepath.hapi/io/filesystem/mmfile.hapi/io/iocallback.hapi/io/ip/ipsocket.hapi/io/reader/csvfilereader.hapi/io/reader/filereader.hapi/io/reader/utf8reader.hapi/io/url.hapi/io/writer/log/logbuffer.hapi/maincontext.hapi/math/float/decimal.hapi/math/fpu.hapi/math/int/abs.hapi/math/int/atomic.hapi/math/int/bigint.hapi/math/int/bitorder.hapi/math/int/byteorder.hapi/math/int/log2.hapi/math/int/power2.hapi/math/int/sign.hapi/memory/hwcache.hapi/memory/memblock.hapi/memory/memstream.hapi/memory/ptr.hapi/memory/vm.hapi/platform/Linux/syscontext.hapi/platform/malloc.hapi/platform/OpenGL/EGL/eglconfig.hapi/platform/sync/rwlock.hapi/platform/sync/thrmutex.hapi/platform/task/thread.hapi/platform/task/thread_tls.hapi/string/base64encode_string.hapi/string/convertwchar.hapi/string/cstring.hapi/string/format_string.hapi/string/stringstream.hapi/task/syncqueue.hapi/task/syncrun.hapi/task/syncthread.hapi/test/errortimer.hapi/test/mm/testmm.hapi/test/validate.hapi/time/timevalue.hplatform/Linux/vm.c
csvfilereader_parsestate_tgconfig_filter_tsuffixtreeiterator_adapter_itwlistentry_t
 Main Program Context
 Main Thread
 main_arg, thread_t
 main_task, thread_t
 main_thread
 mainarg_thread
 MainContext
 MainContext impl
 maincontext_CONSOLE
 maincontext_DEFAULT
 maincontext_e
 maincontext_startparam_INIT, maincontext_startparam_t
 maincontext_startparam_t
 maincontext_STATIC
 maincontext_STATICSIZE
 maincontext_STATICTESTSIZE
 maincontext_t
 maincontext_thread_f
 mainfct, syncthread_t
 maintask_thread
 mainthread_f
 Make Command
 Make Targets
 makedirectory_directory, directory_t
 makefile_directory, directory_t
 makepowerof2_int
 malloc
 Malloc
 Malloc impl
 malloc_acceptleak, resourceusage_t
 malloc_correction, resourceusage_t
 malloc_mm
 malloc_mmimpl, mm_impl_t
 malloc_testmm, testmm_t
 malloc_usage, resourceusage_t
 manage
 matchall_suffixtree, suffixtree_t
 matchbytes_utf8reader, utf8reader_t
 matched_len, suffixtree_pos_t
 maxchar_utf8
 MAXCHILD, trie_nodedata_t
 maxlength, suffixtree_t
 maxlevel, exthash_t
 maxnr_signalrt, signalrt_t
 maxpbuffer_eglconfig, eglconfig_t
 maxpbuffer_gconfig
 MAXSIZE, header_t
 maxsize_utf8
 maxsyserrnum_errorcontext
 measure, systimer_t
 memberasobject_typeadaptmember
 memberasobject_typeadaptnodeoffset
 memblock_FREE, memblock_t
 memblock_INIT, memblock_t
 memblock_t
 MEMCOPY
 memory
 Memory-Mapped-File
 Memory-Mapped-File Linux
 MemoryBlock
 MemoryBlock impl
 MemoryErrorTestMacros
 MemoryErrorTestMacros impl
 MemoryManager-Object
 MemoryManager-Object impl
 MemoryManagerMacros
 MemoryPageCache
 MemoryPageCache impl
 MemoryPointer
 MemoryPointer impl
 MemoryStream
 MemoryStream impl
 MEMSET0
 memstream_FREE, memstream_t
 memstream_INIT, memstream_t
 memstream_t
 mfree, mm_it
 mfree_mm
 mfree_mmimpl, mm_impl_t
 mfree_testmm, testmm_t
 mm, threadcontext_t
 mm_FREE, mm_t
 mm_impl_it
 mm_impl_t
 mm_INIT, mm_t
 mm_it
 mm_it_DECLARE
 mm_it_FREE, mm_it
 mm_it_INIT, mm_it
 mm_maincontext
 mm_t
 mmcontext_testmm, testmm_t
 mmfile, filereader_t
 mmfile_FREE, mmfile_t
 mmfile_t
 mmimpl_FREE, mm_impl_t
 mmtrans_correction, resourceusage_t
 mmtrans_usage, resourceusage_t
 mod_bigint
 modeid, x11videomode_t
 Module
 Module impl
 module_DIRECTORY
 module_FREE, module_t
 module_t
 movexpand_vmpage, vmpage_t
 mresize, mm_it
 mresize_mm
 mresize_mmimpl, mm_impl_t
 mresize_testmm, testmm_t
 mult_bigint, bigint_t
 mult_biginthelper
 mult_decimal, decimal_t
 mult_decimalhelper
 multsplit_biginthelper
 multsplit_decimalhelper
 multui32_bigint, bigint_t
 Mutex
 Mutex Linuximpl
 mutex_INIT_DEFAULT, mutex_t
 mutex_t
A singleton called g_maincontext defines the global program context.
The main thread which executes the function main() and which is created implicitly by the operating system must call the function maincontext_t.init_maincontext to initialize its processcontext_t and associated threadcontext_t.
void * main_arg
Parameter of executed main_task function.
thread_f main_task
Function executed after thread has been created.
static void * main_thread(thread_startargument_t *startarg)
The start function of the thread.
maincontext_thread_f main_thread
The main threads main function.
#define mainarg_thread(
   threadobj
) ( __extension__ ({ volatile const thread_t * _thr ; _thr = (threadobj) ; _thr->main_arg ; }))
Implements thread_t.mainarg_thread.
void * mainarg_thread(const thread_t *threadobj)
Reads thread_t.main_arg field of thread_t object.
Defines service context used by every software component in C-kern(el).
Implementation file of global init anf free functions.
Default single or multi threading implementation for commandline tools.
Default single or multi threading implementation.
Used to switch between different implementations.
#define maincontext_startparam_INIT(
   context_type,
   argc,
   argv,
   main_thread
) { context_type, argc, argv, main_thread }
Static initializer.
struct maincontext_startparam_t
Start parameters used in initstart_maincontext.
An implementation which is configured by a static initializer.
#define maincontext_STATICSIZE processcontext_STATICSIZE
Defines size for s_maincontext_staticmem.
#define maincontext_STATICTESTSIZE (maincontext_STATICSIZE)
Defines additonal size for s_maincontext_staticmem.
struct maincontext_t
Defines the main top level context of the whole process.
typedef int (*maincontext_thread_f) (maincontext_t * maincontext)
Define maincontext_thread_f as signature of start function for main thread.
syncthread_f mainfct
Function where execution should continue.
#define maintask_thread(
   threadobj
) ( __extension__ ({ volatile const thread_t * _thr ; _thr = (threadobj) ; _thr->main_task ; }))
Implements thread_t.maintask_thread.
thread_f maintask_thread(const thread_t *threadobj)
Returns thread_t.main_task.
typedef int (*mainthread_f) (void * user)
Signature of main thread is the same as function main.
Run ‘make’ at the top level directory.
int makedirectory_directory(directory_t *dir/*0 = > current working directory*/,
const char *directory_path  )
Creates directory with directory_path relative to dir.
int makefile_directory(directory_t *dir/*0 = > current working directory*/,
const char *file_path,  
off_t file_length  )
Creates a new file with file_path relative to dir.
Implements int_t.makepowerof2_int as a generic function.
unsigned makepowerof2_int(unsigned i)
Returns power of 2 value of the argument or 0.
int (
   *malloc
) (struct mm_t * mman, size_t size, /*out*/struct memblock_t * memblock)
See mm_impl_t.malloc_mmimpl for an implementation.
Offers an interface to check for system memory allocated with malloc and co.
Implements Malloc.
uint16_t malloc_acceptleak
Holds maximum number of bytes of accepted malloc memory leak.
size_t malloc_correction
Number of bytes resourceusage_t uses itself.
#define malloc_mm(
   mm,
   size,
   /*out*/memblock
) ((mm).iimpl->malloc((mm).object, (size), (memblock)))
Implements mm_t.malloc_mm.
int malloc_mm(mm_t mm,
size_t size,
/*out*/struct memblock_t *memblock)
Calls mm->iimpl->malloc with mm->object as first parameter.
int malloc_mmimpl(mm_impl_t *mman,
size_t size,
/*out*/struct memblock_t *memblock)
Allocates new memory block.
int malloc_testmm(testmm_t *mman,
size_t size,
/*out*/struct memblock_t *memblock)
Allocates a new memory block.
size_t malloc_usage
Number of memory bytes allocated by malloc.
int matchall_suffixtree(suffixtree_t *tree,
size_t length,
const uint8_t searchstr[length],
size_t skip_count,
/*out*/size_t *matched_count,
size_t maxmatchcount,
/*out*/const uint8_t *matchedpos[maxmatchcount])
Returns number of times and start addresses of suffixes which contain searchstr.
int matchbytes_utf8reader(utf8reader_t *utfread,
size_t colnr,
size_t nrbytes,
const uint8_t bytes[nrbytes],
/*err*/size_t *matchedsize)
Matches a string of bytes.
size_t matched_len
The number of characters matched in node.
Implements utf8.maxchar_utf8.
char32_t maxchar_utf8(void)
Returns the maximum character value (unicode code point) which can be encoded into utf-8.
#define MAXCHILD (
   (MAXSIZE-offsetof(trie_nodedata_t, keylen)-sizeof(((trie_nodedata_t*)0)->uservalue)) (sizeof(void*)+sizeof(uint8_t))
)
The maximum nr of child pointer which could be stored in a trie_nodedata_t of size header_t.MAXSIZE.
size_t maxlength
Max length (in bytes) of all added strings.
uint8_t maxlevel
Determines the max size of the hash table.
signalrt_t maxnr_signalrt(void)
Returns the maximum supported signal number signalrt_t.
int maxpbuffer_eglconfig(eglconfig_t eglconf,
struct opengl_display_t *egldisp,
/*out*/uint32_t *maxwidth,
/*out*/uint32_t *maxheight,
/*out*/uint32_t *maxpixels)
Returns the maximum size of an off-screen pixel buffer.
#define maxpbuffer_gconfig(
   gconf,
   display,
   maxwidth,
   maxheight,
   maxpixels
) maxpbuffer_eglconfig(gl_gconfig(gconf), gl_display(display), maxwidth, maxheight, maxpixels)
Implements gconfig_t.maxpbuffer_gconfig.
int maxpbuffer_gconfig(const gconfig_t *gconf,
struct display_t *display,
/*out*/uint32_t *maxwidth,
/*out*/uint32_t *maxheight,
/*out*/uint32_t *maxpixels)
Returns the maximum size of an off-screen pixel buffer.
#define MAXSIZE (64*sizeof(void*))
Implements utf8.maxsize_utf8.
uint8_t maxsize_utf8(void)
Returns the maximum size in bytes of an utf-8 encoded multibyte sequence.
#define maxsyserrnum_errorcontext() (132)
Implements errorcontext_t.maxsyserrnum_errorcontext.
uint16_t maxsyserrnum_errorcontext(void)
Returns the number of system error entries.
#define memberasobject_typeadaptmember(
   nodeadp,
   node
) memberasobject_typeadaptnodeoffset((nodeadp)->nodeoff, node)
Imeplements typeadapt_member_t.memberasobject_typeadaptmember.
struct typeadapt_object_t * memberasobject_typeadaptmember(
   typeadapt_member_t *nodeadp,
   void *node
)
See memberasobject_typeadaptnodeoffset.
#define memberasobject_typeadaptnodeoffset(
   nodeoff,
   node
) ( __extension__ ({ uint32_t _off = (nodeoff); (struct typeadapt_object_t*) ( (uintptr_t)(node) - _off ); }))
Implements typeadapt_nodeoffset_t.memberasobject_typeadaptnodeoffset.
struct typeadapt_object_t * memberasobject_typeadaptnodeoffset(
   const typeadapt_nodeoffset_t nodeoff,
   void *node
)
Converts a pointer to a struct member to the object which contains it.
#define memblock_FREE { 0, 0 }
Static initializer.
#define memblock_INIT(size,
addr) { (addr), (size) }
Static initializer.
struct memblock_t
Describes memory block.
#define MEMCOPY(
   destination,
   source
) do { static_assert(sizeof(*(destination)) == sizeof(*(source)),"same size") ; memcpy((destination), (source), sizeof(*(destination))) ; } while(0)
Copies memory from source to destination.
Maps a file into virtual memory.
Implements Memory-Mapped-File on Linux.
Declares structure describing a block of memory.
Implements MemoryBlock.
Wrap memory manager macros into error generating macros which use test_errortimer_t to return an error at a certain time step.
Implements MemoryErrorTestMacros.
Defines interfaceable object which offers memory manager functionality.
Implements unittest of MemoryManager-Object.
Exports convenience macros for accessing mm_maincontext.
Cache for virtual memory pages.
Implements MemoryPageCache.
Supports extracting and adding bits to pointers.
Implements MemoryPointer.
Wraps a memory block which points to start and end address.
Implements MemoryStream.
#define MEMSET0(pointer) memset((pointer), 0, sizeof(*(pointer)))
Sets memory of variable to 0.
#define memstream_FREE { 0, 0 }
Static initializer.
#define memstream_INIT(start,
end) { start, end }
Initializes memstream_t.
struct memstream_t
Wraps a memory block which points to start and end address.
int (*mfree) (struct mm_t * mman, struct memblock_t * memblock)
See mm_impl_t.mfree_mmimpl for an implementation.
#define mfree_mm(mm,
memblock) ((mm).iimpl->mfree((mm).object, (memblock)))
Implements mm_t.mfree_mm.
int mfree_mm(mm_t mm,
struct memblock_t *memblock)
Calls mm->iimpl->mfree with mm->object as first parameter.
int mfree_mmimpl(mm_impl_t *mman,
struct memblock_t *memblock)
Frees the memory of an allocated memory block.
int mfree_testmm(testmm_t *mman,
struct memblock_t *memblock)
Frees the memory of an allocated memory block.
iobj_DECLARE(,
mm) mm
Thread local memory manager.
#define mm_FREE iobj_FREE
Static initializer.
mm_it_DECLARE(mm_impl_it,
mm_impl_t)
Adapts mm_it to mm_impl_t.
struct mm_impl_t
Default memory manager for allocating/freeing blocks of memory.
#define mm_INIT(object,
iimpl) iobj_INIT(object, iimpl)
Static initializer.
struct mm_it
The function table describing the interface to a memory manager.
#define mm_it_DECLARE(
   declared_it,
   memorymanager_t
) typedef struct declared_it declared_it ; struct declared_it { int (* malloc) (memorymanager_t * mman, size_t size, /*out*/struct memblock_t * memblock) ; int (* mresize) (memorymanager_t * mman, size_t newsize, struct memblock_t * memblock) ; int (* mfree) (memorymanager_t * mman, struct memblock_t * memblock) ; size_t (* sizeallocated) (memorymanager_t * mman) ; } ;
Implements mm_it.mm_it_DECLARE.
void mm_it_DECLARE(TYPENAME declared_it,
TYPENAME memorymanager_t)
Declares an interface function table for accessing a memory manager service.
#define mm_it_FREE { 0, 0, 0, 0 }
Static initializer.
#define mm_it_INIT(
   malloc_f,
   mresize_f,
   mfree_f,
   sizeallocated_f
) { (malloc_f), (mresize_f), (mfree_f), (sizeallocated_f) }
Static initializer.
#define mm_maincontext() (tcontext_maincontext()->mm)
Inline implementation of maincontext_t.mm_maincontext.
Returns interfaceable object mm_t for access of memory manager.
iobj_DECLARE(mm_t,
mm)
Uses iobj_DECLARE to declare interfaceable object.
testmm_t * mmcontext_testmm(void)
Returns the installed testmm_t memory manager or 0.
struct { uint8_t* addr ; size_t size ; } mmfile[2]
The buffered input of the file.
#define mmfile_FREE { 0, 0 }
Static initializer for mmfile_t.
struct mmfile_t
Describes a memory mapped file.
#define mmimpl_FREE { 0 }
Static initializer.
size_t mmtrans_correction
Number of bytes resourceusage_t uses itself.
size_t mmtrans_usage
Number of memory bytes allocated by mm_impl_t.
#define mod_bigint(result,
lbig,
rbig) (divmod_bigint(0, result, lbig, rbig))
Implements bigint_t.mod_bigint.
int mod_bigint(bigint_t *restrict *result,
const bigint_t *lbig,
const bigint_t *rbig)
Computes lbig modulo rbig.
uint16_t modeid
Internal implementation specific id.
Supports loading of binary blobs which are the result of a extraction of the text section of a shared libraries.
Implements Module.
#define module_DIRECTORY "bin/mod/"
The name of the directory the loadable module binary blobs are stored.
#define module_FREE { 0, 0 }
Static initializer.
struct module_t
Describes the meory page where the program code is stored.
int movexpand_vmpage(vmpage_t *vmpage,
size_t size_in_bytes)
Grows an already mapped virtual memory block.
int (
   *mresize
) (struct mm_t * mman, size_t newsize, struct memblock_t * memblock)
See mm_impl_t.mresize_mmimpl for an implementation.
#define mresize_mm(
   mm,
   newsize,
   memblock
) ((mm).iimpl->mresize((mm).object, (newsize), (memblock)))
Implements mm_t.mresize_mm.
int mresize_mm(mm_t mm,
size_t newsize,
struct memblock_t *memblock)
Calls mm->iimpl->mresize with mm->object as first parameter.
int mresize_mmimpl(mm_impl_t *mman,
size_t newsize,
struct memblock_t *memblock)
Allocates new memory or resizes already allocated memory.
int mresize_testmm(testmm_t *mman,
size_t newsize,
struct memblock_t *memblock)
Allocates new or resizes already allocated memory block.
int mult_bigint(bigint_t *restrict *result,
const bigint_t *lbig,
const bigint_t *rbig)
Multiplies two big integers and returns the result.
static void mult_biginthelper(bigint_t *big,
uint16_t lnrdigits,
const uint32_t *ldigits,
uint16_t rnrdigits,
const uint32_t *rdigits,
const uint16_t exponent)
Multiplies two numbers with the simple schoolbook algorithm.
int mult_decimal(decimal_t *restrict *result,
const decimal_t *ldec,
const decimal_t *rdec)
Multiplies the two last parameters and returns the product in the first.
static void mult_decimalhelper(decimal_t *dec,
uint8_t lsize,
const uint32_t *ldigits,
uint8_t rsize,
const uint32_t *rdigits,
int16_t exponent)
Multiplies two decimal numbers and returns the positive result.
static int multsplit_biginthelper(bigint_t *restrict *result,
uint16_t lnrdigits,
const uint32_t *ldigits,
uint16_t rnrdigits,
const uint32_t *rdigits)
Multiplies two big integer numbers and returns the positive result.
static int multsplit_decimalhelper(decimal_t * restrict *result,
uint8_t lsize,
const uint32_t *ldigits,
uint8_t rsize,
const uint32_t *rdigits)
Multiplies two decimal numbers and returns the positive result.
int multui32_bigint(bigint_t *restrict *result,
const bigint_t *lbig,
const uint32_t factor)
Multiplies the big integer with a 32 bit unsigned int.
Encapsulates an os specific exclusive lock.
Implements Mutex.
#define mutex_INIT_DEFAULT sys_mutex_INIT_DEFAULT
Static initializer for mutex_t without error checking.
typedef sys_mutex_t mutex_t
Implements a mutual exclusion lock.
Close