aboutsummaryrefslogtreecommitdiff
path: root/gfsm/gfsm/src/libgfsm/gfsmDebug.c
blob: 463e28a061807bd07cc538897dae8dd50152255e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <gfsmDebug.h>
#include <gfsmMem.h>
#include <gfsmConfig.h>

#ifdef GFSM_DEBUG_ENABLED
# define GFSM_MEM_DEBUG
# define GFSM_ALLOC_DEBUG
#endif /* GFSM_DEBUG_ENABLED */

void gfsm_debug_init(void) {
#if defined(GFSM_MEM_DEBUG)
  g_mem_set_vtable(glib_mem_profiler_table);
# if defined(GFSM_ALLOC_DEBUG)
  gfsm_allocators_enable();
# endif /* GFSM_ALLOC_DEBUG */
#endif /* GFSM_MEM_DEBUG */
  return;
}

void gfsm_debug_finish(void) {
#if defined(GFSM_MEM_DEBUG)
  g_blow_chunks();
# if defined(GFSM_ALLOC_DEBUG)
  gfsm_allocators_free();
# endif /* GFSM_ALLOC_DEBUG */
#endif /* GFSM_MEM_DEBUG */
  return;
}

void gfsm_debug_print(void) {
#if defined(GFSM_MEM_DEBUG)
  g_mem_profile();
#endif /* GFSM_MEM_DEBUG */
  return;
}