1.5.0
CCC
 
Memory.hpp File Reference
#include "gstlearn_export.hpp"

Macros

#define mem_free(tab)   mem_free_(__FILE__, __LINE__, tab)
 
#define mem_alloc(a, b)   mem_alloc_(__FILE__, __LINE__, a, b)
 
#define mem_calloc(a, b, c)   mem_calloc_(__FILE__, __LINE__, a, b, c)
 
#define mem_realloc(tab, a, b)   mem_realloc_(__FILE__, __LINE__, tab, a, b)
 
#define mem_copy(tab, a, b)   mem_copy_(__FILE__, __LINE__, tab, a, b)
 

Functions

GSTLEARN_EXPORT void memory_leak_set (int flag)
 
GSTLEARN_EXPORT void memory_leak_reset (void)
 
GSTLEARN_EXPORT void memory_leak_report (void)
 
GSTLEARN_EXPORT char * mem_alloc_ (const char *call_file, unsigned int call_line, int size, int flag_fatal)
 
GSTLEARN_EXPORT char * mem_calloc_ (const char *call_file, unsigned int call_line, int size_t, int size, int flag_fatal)
 
GSTLEARN_EXPORT char * mem_realloc_ (const char *call_file, unsigned int call_line, char *tab, int size, int flag_fatal)
 
GSTLEARN_EXPORT char * mem_copy_ (const char *call_file, unsigned int call_line, char *tabin, int size, int flag_fatal)
 
GSTLEARN_EXPORT char * mem_free_ (const char *call_file, unsigned int call_line, char *tab)
 
GSTLEARN_EXPORT void mem_debug_set (int flag)
 
GSTLEARN_EXPORT void memory_status (const char *title)
 
GSTLEARN_EXPORT double ** mem_tab_free (double **tab, int nvar)
 
GSTLEARN_EXPORT double ** mem_tab_alloc (int nvar, int size, int flag_fatal)
 
GSTLEARN_EXPORT unsigned long long getTotalSystemMemory ()
 

Macro Definition Documentation

◆ mem_alloc

#define mem_alloc (   a,
 
)    mem_alloc_(__FILE__, __LINE__, a, b)

◆ mem_calloc

#define mem_calloc (   a,
  b,
 
)    mem_calloc_(__FILE__, __LINE__, a, b, c)

◆ mem_copy

#define mem_copy (   tab,
  a,
 
)    mem_copy_(__FILE__, __LINE__, tab, a, b)

◆ mem_free

#define mem_free (   tab)    mem_free_(__FILE__, __LINE__, tab)

◆ mem_realloc

#define mem_realloc (   tab,
  a,
 
)    mem_realloc_(__FILE__, __LINE__, tab, a, b)

Function Documentation

◆ getTotalSystemMemory()

GSTLEARN_EXPORT unsigned long long getTotalSystemMemory ( )

◆ mem_alloc_()

GSTLEARN_EXPORT char* mem_alloc_ ( const char *  call_file,
unsigned int  call_line,
int  size,
int  flag_fatal 
)

Core allocation routine

Returns
Pointer to the array to be allocated
Parameters
[in]call_fileName of the calling file
[in]call_lineLine in the calling file
[in]sizeNumber of bytes
[in]flag_fatalError status (1 = the program stops)

◆ mem_calloc_()

GSTLEARN_EXPORT char* mem_calloc_ ( const char *  call_file,
unsigned int  call_line,
int  size,
int  size_elem,
int  flag_fatal 
)

Core allocation routine

Returns
Pointer to the array to be allocated
Parameters
[in]call_fileName of the calling file
[in]call_lineLine in the calling file
[in]sizeNumber of elements
[in]size_elemNumber of bytes per element
[in]flag_fatalError status (1 = the program stops)

◆ mem_copy_()

GSTLEARN_EXPORT char* mem_copy_ ( const char *  call_file,
unsigned int  call_line,
char *  tabin,
int  size,
int  flag_fatal 
)

Core routine for allocating and copying

Returns
Pointer to the newly allocated (and copied) array
Parameters
[in]call_fileName of the calling file
[in]call_lineLine in the calling file
[in]tabinArray to be copied
[in]sizeNumber of bytes
[in]flag_fatalError status (1 = the program stops)

◆ mem_debug_set()

GSTLEARN_EXPORT void mem_debug_set ( int  flag)

Set the status of the memory

Parameters
[in]flagActiviation flag

◆ mem_free_()

GSTLEARN_EXPORT char* mem_free_ ( const char *  call_file,
unsigned int  call_line,
char *  tab 
)

Core deallocation

Returns
Pointer to the freed array
Parameters
[in]call_fileName of the calling file
[in]call_lineLine in the calling file
[in]tabArray to be freed

◆ mem_realloc_()

GSTLEARN_EXPORT char* mem_realloc_ ( const char *  call_file,
unsigned int  call_line,
char *  tab,
int  size,
int  flag_fatal 
)

Core re-allocation routine

Returns
Pointer to the array to be re_allocated
Parameters
[in]call_fileName of the calling file
[in]call_lineLine in the calling file
[in]tabArray to be reallocated
[in]sizeNew number of bytes
[in]flag_fatalError status (1 = the program stops)

◆ mem_tab_alloc()

GSTLEARN_EXPORT double** mem_tab_alloc ( int  nvar,
int  size,
int  flag_fatal 
)

Core allocation of an array of double

Returns
Pointer to the array of pointers to be allocated
Parameters
[in]nvarnumber of elements in the array
[in]sizenumber of double values
[in]flag_fatalerror status (1 = the program stops)

◆ mem_tab_free()

GSTLEARN_EXPORT double** mem_tab_free ( double **  tab,
int  nvar 
)

Core deallocation of an array of pointers

Returns
Pointer to the freed array
Parameters
[in]tabarray of pointers to be freed
[in]nvarNumber of elements in the array

◆ memory_leak_report()

GSTLEARN_EXPORT void memory_leak_report ( void  )

Report Memory Leak

◆ memory_leak_reset()

GSTLEARN_EXPORT void memory_leak_reset ( void  )

Reset the Memory Leak processing structure

◆ memory_leak_set()

GSTLEARN_EXPORT void memory_leak_set ( int  flag)

Set the memory leak mechanism

Parameters
[in]flagActivation flag

◆ memory_status()

GSTLEARN_EXPORT void memory_status ( const char *  title)

Print the status of the memory

Parameters
[in]titleTitle printed when checking memory