Scippy

SCIP

Solving Constraint Integer Programs

memory.h File Reference

Detailed Description

memory allocation routines

Author
Tobias Achterberg
Gerald Gamrath
Marc Pfetsch

Definition in file memory.h.

#include <limits.h>
#include <stdlib.h>
#include <stddef.h>
#include "scip/config.h"

Go to the source code of this file.

Macros

#define ASSIGN(pointerstarstar, voidstarfunction)   (*(pointerstarstar) = (voidstarfunction))
 
#define ASSIGNCHECK(pointerstarstar, voidstarfunction, origpointer)   (*(pointerstarstar) = (voidstarfunction))
 
#define EXTERN   extern
 
#define SCIP_UNUSED(x)   ((void) (x))
 
#define BMSallocMemory(ptr)   ASSIGN((ptr), BMSallocMemory_call( sizeof(**(ptr)), __FILE__, __LINE__ ))
 
#define BMSallocMemorySize(ptr, size)   ASSIGN((ptr), BMSallocMemory_call( (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))
 
#define BMSallocMemoryCPP(size)   BMSallocMemory_call( (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )
 
#define BMSallocClearMemorySize(ptr, size)   ASSIGN((ptr), BMSallocClearMemory_call((size_t)(1), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))
 
#define BMSallocMemoryArray(ptr, num)   ASSIGN((ptr), BMSallocMemoryArray_call((size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ))
 
#define BMSallocMemoryArrayCPP(num, size)   BMSallocMemoryArray_call( (size_t)(ptrdiff_t)(num), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )
 
#define BMSallocClearMemoryArray(ptr, num)   ASSIGN((ptr), BMSallocClearMemory_call((size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ))
 
#define BMSreallocMemorySize(ptr, size)   ASSIGN((ptr), BMSreallocMemory_call((void*)(*(ptr)), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))
 
#define BMSreallocMemoryArray(ptr, num)   ASSIGN((ptr), BMSreallocMemoryArray_call( *(ptr), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ))
 
#define BMSclearMemory(ptr)   BMSclearMemory_call( (void*)(ptr), sizeof(*(ptr)) )
 
#define BMSclearMemoryArray(ptr, num)   BMSclearMemory_call( (void*)(ptr), (size_t)(ptrdiff_t)(num)*sizeof(*(ptr)) )
 
#define BMSclearMemorySize(ptr, size)   BMSclearMemory_call( (void*)(ptr), (size_t)(ptrdiff_t)(size) )
 
#define BMScopyMemory(ptr, source)   BMScopyMemory_call( (void*)(ptr), (const void*)(source), sizeof(*(ptr)) )
 
#define BMScopyMemoryArray(ptr, source, num)   BMScopyMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(num)*sizeof(*(ptr)) )
 
#define BMScopyMemorySize(ptr, source, size)   BMScopyMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(size) )
 
#define BMSmoveMemory(ptr, source)   BMSmoveMemory_call( (void*)(ptr), (const void*)(source), sizeof(*(ptr)) )
 
#define BMSmoveMemoryArray(ptr, source, num)   BMSmoveMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(num) * sizeof(*(ptr)) )
 
#define BMSmoveMemorySize(ptr, source, size)   BMSmoveMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(size) )
 
#define BMSduplicateMemory(ptr, source)   ASSIGN((ptr), BMSduplicateMemory_call( (const void*)(source), sizeof(**(ptr)), __FILE__, __LINE__ ))
 
#define BMSduplicateMemorySize(ptr, source, size)   ASSIGN((ptr), BMSduplicateMemory_call( (const void*)(source), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))
 
#define BMSduplicateMemoryArray(ptr, source, num)
 
#define BMSfreeMemory(ptr)   BMSfreeMemory_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSfreeMemoryNull(ptr)   BMSfreeMemoryNull_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSfreeMemoryArray(ptr)   BMSfreeMemory_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSfreeMemoryArrayNull(ptr)   BMSfreeMemoryNull_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSfreeMemorySize(ptr)   BMSfreeMemory_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSfreeMemorySizeNull(ptr)   BMSfreeMemoryNull_call( (void**)(ptr), __FILE__, __LINE__ )
 
#define BMSgetPointerSize(ptr)   BMSgetPointerSize_call(ptr)
 
#define BMSdisplayMemory()   BMSdisplayMemory_call()
 
#define BMScheckEmptyMemory()   BMScheckEmptyMemory_call()
 
#define BMSgetMemoryUsed()   BMSgetMemoryUsed_call()
 
#define BMScreateChunkMemory(sz, isz, gbf)   BMScreateChunkMemory_call( (sz), (isz), (gbf), __FILE__, __LINE__ )
 
#define BMSclearChunkMemory(mem)   BMSclearChunkMemory_call( (mem), __FILE__, __LINE__ )
 
#define BMSdestroyChunkMemory(mem)   BMSdestroyChunkMemory_call( (mem), __FILE__, __LINE__ )
 
#define BMSallocChunkMemory(mem, ptr)   ASSIGN((ptr), BMSallocChunkMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSduplicateChunkMemory(mem, ptr, source)
 
#define BMSfreeChunkMemory(mem, ptr)   BMSfreeChunkMemory_call( (mem), (void**)(ptr), sizeof(**(ptr)), __FILE__, __LINE__ )
 
#define BMSfreeChunkMemoryNull(mem, ptr)   BMSfreeChunkMemoryNull_call( (mem), (void**)(ptr) )
 
#define BMSgarbagecollectChunkMemory(mem)   BMSgarbagecollectChunkMemory_call(mem)
 
#define BMSgetChunkMemoryUsed(mem)   BMSgetChunkMemoryUsed_call(mem)
 
#define BMScreateBlockMemory(csz, gbf)   BMScreateBlockMemory_call( (csz), (gbf), __FILE__, __LINE__ )
 
#define BMSclearBlockMemory(mem)   BMSclearBlockMemory_call( (mem), __FILE__, __LINE__ )
 
#define BMSdestroyBlockMemory(mem)   BMSdestroyBlockMemory_call( (mem), __FILE__, __LINE__ )
 
#define BMSallocBlockMemory(mem, ptr)   ASSIGN((ptr), BMSallocBlockMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSallocBlockMemorySize(mem, ptr, size)   ASSIGN((ptr), BMSallocBlockMemory_call((mem), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))
 
#define BMSallocBlockMemoryArray(mem, ptr, num)   ASSIGN((ptr), BMSallocBlockMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSallocClearBlockMemoryArray(mem, ptr, num)   ASSIGN((ptr), BMSallocClearBlockMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSreallocBlockMemorySize(mem, ptr, oldsize, newsize)
 
#define BMSreallocBlockMemoryArray(mem, ptr, oldnum, newnum)
 
#define BMSduplicateBlockMemory(mem, ptr, source)
 
#define BMSduplicateBlockMemoryArray(mem, ptr, source, num)
 
#define BMSfreeBlockMemory(mem, ptr)   BMSfreeBlockMemory_call( (mem), (void**)(ptr), sizeof(**(ptr)), __FILE__, __LINE__ )
 
#define BMSfreeBlockMemoryNull(mem, ptr)   BMSfreeBlockMemoryNull_call( (mem), (void**)(ptr), sizeof(**(ptr)), __FILE__, __LINE__ )
 
#define BMSfreeBlockMemoryArray(mem, ptr, num)   BMSfreeBlockMemory_call( (mem), (void**)(ptr), (num)*sizeof(**(ptr)), __FILE__, __LINE__ )
 
#define BMSfreeBlockMemoryArrayNull(mem, ptr, num)   BMSfreeBlockMemoryNull_call( (mem), (void**)(ptr), (num)*sizeof(**(ptr)), __FILE__, __LINE__ )
 
#define BMSfreeBlockMemorySize(mem, ptr, size)   BMSfreeBlockMemory_call( (mem), (void**)(ptr), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )
 
#define BMSfreeBlockMemorySizeNull(mem, ptr, size)   BMSfreeBlockMemory_call( (mem), (void**)(ptr), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )
 
#define BMSgarbagecollectBlockMemory(mem)   BMSgarbagecollectBlockMemory_call(mem)
 
#define BMSgetBlockMemoryAllocated(mem)   BMSgetBlockMemoryAllocated_call(mem)
 
#define BMSgetBlockMemoryUsed(mem)   BMSgetBlockMemoryUsed_call(mem)
 
#define BMSgetBlockMemoryUnused(mem)   BMSgetBlockMemoryUnused_call(mem)
 
#define BMSgetBlockMemoryUsedMax(mem)   BMSgetBlockMemoryUsedMax_call(mem)
 
#define BMSgetBlockMemoryUnusedMax(mem)   BMSgetBlockMemoryUnusedMax_call(mem)
 
#define BMSgetBlockMemoryAllocatedMax(mem)   BMSgetBlockMemoryAllocatedMax_call(mem)
 
#define BMSgetBlockPointerSize(mem, ptr)   BMSgetBlockPointerSize_call((mem), (ptr))
 
#define BMSdisplayBlockMemory(mem)   BMSdisplayBlockMemory_call(mem)
 
#define BMSblockMemoryCheckEmpty(mem)   BMScheckEmptyBlockMemory_call(mem)
 
#define BMSallocBufferMemory(mem, ptr)   ASSIGN((ptr), BMSallocBufferMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSallocBufferMemorySize(mem, ptr, size)   ASSIGN((ptr), BMSallocBufferMemory_call((mem), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))
 
#define BMSreallocBufferMemorySize(mem, ptr, size)   ASSIGN((ptr), BMSreallocBufferMemory_call((mem), (void*)(*(ptr)), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))
 
#define BMSallocBufferMemoryArray(mem, ptr, num)   ASSIGN((ptr), BMSallocBufferMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSallocClearBufferMemoryArray(mem, ptr, num)   ASSIGN((ptr), BMSallocClearBufferMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))
 
#define BMSreallocBufferMemoryArray(mem, ptr, num)
 
#define BMSduplicateBufferMemory(mem, ptr, source, size)   ASSIGN((ptr), BMSduplicateBufferMemory_call((mem), (const void*)(source), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))
 
#define BMSduplicateBufferMemoryArray(mem, ptr, source, num)
 
#define BMSfreeBufferMemory(mem, ptr)   BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__)
 
#define BMSfreeBufferMemoryNull(mem, ptr)   BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)
 
#define BMSfreeBufferMemoryArray(mem, ptr)   BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__)
 
#define BMSfreeBufferMemoryArrayNull(mem, ptr)   BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)
 
#define BMSfreeBufferMemorySize(mem, ptr)   BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__);
 
#define BMSfreeBufferMemorySizeNull(mem, ptr)   BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)
 
#define BMScreateBufferMemory(fac, init, clean)   BMScreateBufferMemory_call((fac), (init), (clean), __FILE__, __LINE__)
 
#define BMSdestroyBufferMemory(mem)   BMSdestroyBufferMemory_call((mem), __FILE__, __LINE__)
 

Typedefs

typedef struct BMS_ChkMem BMS_CHKMEM
 
typedef struct BMS_BlkMem BMS_BLKMEM
 
typedef struct BMS_BufMem BMS_BUFMEM
 

Functions

void * BMSallocClearMemory_call (size_t num, size_t typesize, const char *filename, int line)
 
void * BMSallocMemory_call (size_t size, const char *filename, int line)
 
void * BMSallocMemoryArray_call (size_t num, size_t typesize, const char *filename, int line)
 
void * BMSreallocMemory_call (void *ptr, size_t size, const char *filename, int line)
 
void * BMSreallocMemoryArray_call (void *ptr, size_t num, size_t typesize, const char *filename, int line)
 
void BMSclearMemory_call (void *ptr, size_t size)
 
void BMScopyMemory_call (void *ptr, const void *source, size_t size)
 
void BMSmoveMemory_call (void *ptr, const void *source, size_t size)
 
void * BMSduplicateMemory_call (const void *source, size_t size, const char *filename, int line)
 
void * BMSduplicateMemoryArray_call (const void *source, size_t num, size_t typesize, const char *filename, int line)
 
void BMSfreeMemory_call (void **ptr, const char *filename, int line)
 
void BMSfreeMemoryNull_call (void **ptr, const char *filename, int line)
 
size_t BMSgetPointerSize_call (const void *ptr)
 
void BMSdisplayMemory_call (void)
 
void BMScheckEmptyMemory_call (void)
 
long long BMSgetMemoryUsed_call (void)
 
void BMSalignMemsize (size_t *size)
 
int BMSisAligned (size_t size)
 
BMS_CHKMEMBMScreateChunkMemory_call (size_t size, int initchunksize, int garbagefactor, const char *filename, int line)
 
void BMSclearChunkMemory_call (BMS_CHKMEM *chkmem, const char *filename, int line)
 
void BMSdestroyChunkMemory_call (BMS_CHKMEM **chkmem, const char *filename, int line)
 
void * BMSallocChunkMemory_call (BMS_CHKMEM *chkmem, size_t size, const char *filename, int line)
 
void * BMSduplicateChunkMemory_call (BMS_CHKMEM *chkmem, const void *source, size_t size, const char *filename, int line)
 
void BMSfreeChunkMemory_call (BMS_CHKMEM *chkmem, void **ptr, size_t size, const char *filename, int line)
 
void BMSfreeChunkMemoryNull_call (BMS_CHKMEM *chkmem, void **ptr, size_t size, const char *filename, int line)
 
void BMSgarbagecollectChunkMemory_call (BMS_CHKMEM *chkmem)
 
long long BMSgetChunkMemoryUsed_call (const BMS_CHKMEM *chkmem)
 
BMS_BLKMEMBMScreateBlockMemory_call (int initchunksize, int garbagefactor, const char *filename, int line)
 
void BMSclearBlockMemory_call (BMS_BLKMEM *blkmem, const char *filename, int line)
 
void BMSdestroyBlockMemory_call (BMS_BLKMEM **blkmem, const char *filename, int line)
 
void * BMSallocBlockMemory_call (BMS_BLKMEM *blkmem, size_t size, const char *filename, int line)
 
void * BMSallocBlockMemoryArray_call (BMS_BLKMEM *blkmem, size_t num, size_t typesize, const char *filename, int line)
 
void * BMSallocClearBlockMemoryArray_call (BMS_BLKMEM *blkmem, size_t num, size_t typesize, const char *filename, int line)
 
void * BMSreallocBlockMemory_call (BMS_BLKMEM *blkmem, void *ptr, size_t oldsize, size_t newsize, const char *filename, int line)
 
void * BMSreallocBlockMemoryArray_call (BMS_BLKMEM *blkmem, void *ptr, size_t oldnum, size_t newnum, size_t typesize, const char *filename, int line)
 
void * BMSduplicateBlockMemory_call (BMS_BLKMEM *blkmem, const void *source, size_t size, const char *filename, int line)
 
void * BMSduplicateBlockMemoryArray_call (BMS_BLKMEM *blkmem, const void *source, size_t num, size_t typesize, const char *filename, int line)
 
void BMSfreeBlockMemory_call (BMS_BLKMEM *blkmem, void **ptr, size_t size, const char *filename, int line)
 
void BMSfreeBlockMemoryNull_call (BMS_BLKMEM *blkmem, void **ptr, size_t size, const char *filename, int line)
 
void BMSgarbagecollectBlockMemory_call (BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryAllocated_call (const BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryUsed_call (const BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryUnused_call (const BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryUsedMax_call (const BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryUnusedMax_call (const BMS_BLKMEM *blkmem)
 
long long BMSgetBlockMemoryAllocatedMax_call (const BMS_BLKMEM *blkmem)
 
size_t BMSgetBlockPointerSize_call (const BMS_BLKMEM *blkmem, const void *ptr)
 
void BMSdisplayBlockMemory_call (const BMS_BLKMEM *blkmem)
 
long long BMScheckEmptyBlockMemory_call (const BMS_BLKMEM *blkmem)
 
BMS_BUFMEMBMScreateBufferMemory_call (double arraygrowfac, int arraygrowinit, unsigned int clean, const char *filename, int line)
 
void BMSdestroyBufferMemory_call (BMS_BUFMEM **buffer, const char *filename, int line)
 
void BMSsetBufferMemoryArraygrowfac (BMS_BUFMEM *buffer, double arraygrowfac)
 
void BMSsetBufferMemoryArraygrowinit (BMS_BUFMEM *buffer, int arraygrowinit)
 
void * BMSallocBufferMemory_call (BMS_BUFMEM *buffer, size_t size, const char *filename, int line)
 
void * BMSallocBufferMemoryArray_call (BMS_BUFMEM *buffer, size_t num, size_t typesize, const char *filename, int line)
 
void * BMSallocClearBufferMemoryArray_call (BMS_BUFMEM *buffer, size_t num, size_t typesize, const char *filename, int line)
 
void * BMSreallocBufferMemory_call (BMS_BUFMEM *buffer, void *ptr, size_t size, const char *filename, int line)
 
void * BMSreallocBufferMemoryArray_call (BMS_BUFMEM *buffer, void *ptr, size_t num, size_t typesize, const char *filename, int line)
 
void * BMSduplicateBufferMemory_call (BMS_BUFMEM *buffer, const void *source, size_t size, const char *filename, int line)
 
void * BMSduplicateBufferMemoryArray_call (BMS_BUFMEM *buffer, const void *source, size_t num, size_t typesize, const char *filename, int line)
 
void BMSfreeBufferMemory_call (BMS_BUFMEM *buffer, void **ptr, const char *filename, int line)
 
void BMSfreeBufferMemoryNull_call (BMS_BUFMEM *buffer, void **ptr, const char *filename, int line)
 
size_t BMSgetNUsedBufferMemory (BMS_BUFMEM *buffer)
 
long long BMSgetBufferMemoryUsed (const BMS_BUFMEM *bufmem)
 
void BMSprintBufferMemory (BMS_BUFMEM *buffer)
 

Macro Definition Documentation

◆ ASSIGN

#define ASSIGN (   pointerstarstar,
  voidstarfunction 
)    (*(pointerstarstar) = (voidstarfunction))

Definition at line 72 of file memory.h.

◆ ASSIGNCHECK

#define ASSIGNCHECK (   pointerstarstar,
  voidstarfunction,
  origpointer 
)    (*(pointerstarstar) = (voidstarfunction))

Definition at line 73 of file memory.h.

◆ EXTERN

#define EXTERN   extern

Definition at line 85 of file memory.h.

◆ SCIP_UNUSED

#define SCIP_UNUSED (   x)    ((void) (x))

Definition at line 92 of file memory.h.

◆ BMSallocMemory

#define BMSallocMemory (   ptr)    ASSIGN((ptr), BMSallocMemory_call( sizeof(**(ptr)), __FILE__, __LINE__ ))

Definition at line 108 of file memory.h.

Referenced by BMScreateBlockMemory_call(), BMScreateBufferMemory_call(), create_graph(), createChkmem(), createClique(), createCliquehash(), createJobQueue(), createThreadPool(), doBanditvtableCreate(), doBendersCreate(), doBenderscutCreate(), doBranchruleCreate(), doComprCreate(), doConcsolverTypeCreate(), doConflicthdlrCreate(), doConshdlrCreate(), doDispCreate(), doEventhdlrCreate(), doHeurCreate(), doNodeselCreate(), doPresolCreate(), doPricerCreate(), doProfileCreate(), doPropCreate(), doReaderCreate(), doRelaxCreate(), doScipCreate(), doSepaCreate(), doTableCreate(), lpStoreSolVals(), pushPstack(), SCIP_DECL_CONCSOLVERCREATEINST(), SCIPactivityCreate(), SCIPbranchcandCreate(), SCIPcliquetableCreate(), SCIPclockCreate(), SCIPconcsolverCreateInstance(), SCIPconflictCreate(), SCIPconflictstoreCreate(), SCIPcutpoolCreate(), SCIPdialogCreate(), SCIPdialoghdlrAddInputLine(), SCIPdialoghdlrCreate(), SCIPeventqueueCreate(), SCIPinterruptCreate(), SCIPlpCreate(), SCIPmemCreate(), SCIPmessagehdlrCreate(), SCIPnlpCreate(), SCIPnlpiCreate(), SCIPnlpiOracleCreate(), SCIPnodepqCreate(), SCIPparamsetCreate(), SCIPpqueueCreate(), SCIPpricestoreCreate(), SCIPprimalCreate(), SCIPprobCreate(), SCIPqueueCreate(), SCIPregressionCreate(), SCIPrelaxationCreate(), SCIPreoptCreate(), SCIPsepastoreCreate(), SCIPsparseSolCreate(), SCIPstatCreate(), SCIPsyncstoreCreate(), SCIPtpiCreateJob(), SCIPtreeCreate(), SCIPvisualCreate(), tcliqueCreate(), xmlNewAttr(), and xmlNewNode().

◆ BMSallocMemorySize

#define BMSallocMemorySize (   ptr,
  size 
)    ASSIGN((ptr), BMSallocMemory_call( (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))

◆ BMSallocMemoryCPP

#define BMSallocMemoryCPP (   size)    BMSallocMemory_call( (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )

Definition at line 110 of file memory.h.

◆ BMSallocClearMemorySize

#define BMSallocClearMemorySize (   ptr,
  size 
)    ASSIGN((ptr), BMSallocClearMemory_call((size_t)(1), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))

Definition at line 111 of file memory.h.

Referenced by BMSallocBufferMemory_work().

◆ BMSallocMemoryArray

◆ BMSallocMemoryArrayCPP

#define BMSallocMemoryArrayCPP (   num,
  size 
)    BMSallocMemoryArray_call( (size_t)(ptrdiff_t)(num), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )

Definition at line 113 of file memory.h.

◆ BMSallocClearMemoryArray

#define BMSallocClearMemoryArray (   ptr,
  num 
)    ASSIGN((ptr), BMSallocClearMemory_call((size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ))

◆ BMSreallocMemorySize

#define BMSreallocMemorySize (   ptr,
  size 
)    ASSIGN((ptr), BMSreallocMemory_call((void*)(*(ptr)), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))

Definition at line 115 of file memory.h.

Referenced by BMSallocBufferMemory_work(), and BMSreallocBufferMemory_work().

◆ BMSreallocMemoryArray

#define BMSreallocMemoryArray (   ptr,
  num 
)    ASSIGN((ptr), BMSreallocMemoryArray_call( *(ptr), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ))

Definition at line 116 of file memory.h.

Referenced by BMSallocBufferMemory_work(), cliquetableEnsureSize(), conflictEnsureConflictsetsMem(), conflictEnsureProofsetsMem(), conflictEnsureTmpbdchginfosMem(), conshdlrEnsureCheckconssMem(), conshdlrEnsureConssMem(), conshdlrEnsureEnfoconssMem(), conshdlrEnsureInitconssMem(), conshdlrEnsurePropconssMem(), conshdlrEnsureSepaconssMem(), conshdlrEnsureUpdateconssMem(), cutpoolEnsureCutsMem(), doCdata(), ensureChgcolsSize(), ensureChgrowsSize(), ensureCliquehashSize(), ensureColsSize(), ensureExistingsolsSize(), ensureExterncandsSize(), ensureLazycolsSize(), ensureLpcandsSize(), ensureLpicolsSize(), ensureLpirowsSize(), ensurePartialsolsSize(), ensureProfileSize(), ensurePropagationStorage(), ensurePseudocandsSize(), ensureRowsSize(), ensureRunSize(), ensureSolsSize(), ensureSubdialogMem(), eventqueueEnsureEventsMem(), getAttrval(), getName(), heurAddDiveset(), main(), nodepqResize(), paramsetAdd(), pqueueResize(), pricestoreEnsureBdviolvarsMem(), pricestoreEnsureVarsMem(), probEnsureConssMem(), probEnsureDeletedvarsMem(), probEnsureFixedvarsMem(), probEnsureVarsMem(), procPcdata(), queueResize(), reallocDiveChgSideArrays(), reoptSaveNewObj(), SCIPbendersIncludeBenderscut(), SCIPsetFindConcsolverType(), SCIPsetIncludeBanditvtable(), SCIPsetIncludeBenders(), SCIPsetIncludeBranchrule(), SCIPsetIncludeCompr(), SCIPsetIncludeConflicthdlr(), SCIPsetIncludeHeur(), SCIPsetIncludeNlpi(), SCIPsetIncludeNodesel(), SCIPsetIncludePresol(), SCIPsetIncludePricer(), SCIPsetIncludeRelax(), SCIPsetIncludeSepa(), SCIPsetIncludeTable(), SCIPsetReinsertConshdlrSepaPrio(), SCIPsetSetHeuristics(), SCIPsetSetSeparating(), SCIPsetSortBranchrulesName(), SCIPsetSortComprs(), SCIPsetSortPropsPresol(), sepastoreEnsureCutsMem(), tcliqueEnsureSizeCachedEdges(), tcliqueEnsureSizeEdges(), tcliqueEnsureSizeNodes(), treeEnsureChildrenMem(), treeEnsurePathMem(), and treeEnsurePendingbdchgsMem().

◆ BMSclearMemory

◆ BMSclearMemoryArray

#define BMSclearMemoryArray (   ptr,
  num 
)    BMSclearMemory_call( (void*)(ptr), (size_t)(ptrdiff_t)(num)*sizeof(*(ptr)) )

Definition at line 119 of file memory.h.

Referenced by addRelaxation(), alnsFixMoreVariables(), alnsUnfixVariables(), applyOptcumulative(), applyOptcumulativeFixings(), branch(), branchruledataEnsureNlcount(), buildFlowCover(), calcTwoRowBnds(), checkCurvature(), checkFactorable(), checkForOverlapping(), checkSolution(), checkSystemGF2(), checkViolations(), cleanupNetwork(), cliquePresolve(), computeCut(), computeED(), computeGradient(), computeMinDistance(), conflictAnalyzeLP(), conflictsetCalcInsertDepth(), countNonlinearities(), createCipFormulation(), createCoveringProblem(), createIntervalRelaxation(), createMipCpFormulation(), createSubSCIP(), createTcliqueGraph(), dataReset(), detectImpliedBounds(), detectParallelCols(), dualCostIsValid(), ensureMemorySize(), evalFunctionGradient(), exprgraphEnsureDepth(), exprgraphNodeAddChildren(), exprgraphNodeSimplify(), exprsimplifyAddChildren(), exprsimplifyRemovePolynomialUnusedChildren(), exprsimplifySeparateLinearFromPolynomial(), exprUnconvertPolynomial(), extractCapacityRows(), extractFlow(), extractNodes(), fillDigraph(), filterPatterns(), findAggregation(), findDaRoots(), generateAverageRay(), generateClusterCuts(), getFarkasProof(), getFlowCover(), getGMIFromRow(), getInputString(), getLiftingSequenceGUB(), getMaxactImplicObjchg(), getNextLine(), getNodeIdx(), identifySourcesTargets(), improvePoint(), initData(), initPropdata(), insertSortedRootNeighbors(), isCandidate(), isPatternDominating(), labelSortStable(), lpbdchgsCreate(), lpbdchgsReset(), lpCleanupCols(), lpCleanupRows(), lpRemoveObsoleteCols(), lpRemoveObsoleteRows(), mcfnetworkExtract(), mcfnetworkFill(), neighborhoodStatsReset(), nlpSolve(), nlrowRemoveFixedQuadVars(), nodepartitionCreate(), pertubateEdgeCosts(), preprocessCliques(), presolveConsEffectiveHorizon(), presolveCumulativeCondition(), presolvePropagateCons(), presolveRemoveFixedVariables(), printPseudobooleanCons(), probdataCreate(), processNlRow(), propagateCons(), readFile(), readOPBFile(), reduce_ledge(), removeDoubleAndSingletonsAndPerformDualpresolve(), removeRedundantConssAndNonzeros(), resolvePropagationCoretimes(), runBoundHeuristic(), SCIP_DECL_BANDITRESET(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSCOPY(), SCIP_DECL_CONSINITSOL(), SCIP_DECL_CONSLOCK(), SCIP_DECL_CONSRESPROP(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLPISOLVE(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRICERFARKAS(), SCIP_DECL_PRICERINITSOL(), SCIP_DECL_QUADCONSUPGD(), SCIPaggrRowCreate(), SCIPbendersRemoveSubproblems(), SCIPboolarrayClear(), SCIPboundstoreClear(), SCIPcreateConsSOC(), SCIPcreateNlpiProb(), SCIPdigraphComputeUndirectedComponents(), SCIPexprgraphGetSubtreeVarsUsage(), SCIPexprgraphNodeSplitOffLinear(), SCIPexprtreeCreate(), SCIPexprtreeGetVarsUsage(), SCIPexprtreeRemoveFixedVars(), SCIPgetBinvarRepresentatives(), SCIPhashmapRemoveAll(), SCIPhashsetRemoveAll(), SCIPhashtableRemoveAll(), SCIPintarrayClear(), SCIPlinConsStatsReset(), SCIPlpComputeRelIntPoint(), SCIPlpGetDualfarkas(), SCIPlpGetSol(), SCIPlpRemoveRedundantRows(), SCIPmatrixCreate(), SCIPmatrixGetParallelCols(), SCIPmatrixGetParallelRows(), SCIPnlpGetVarsNonlinearity(), SCIPnlpiOracleAddVars(), SCIPnlpiOracleGetHessianLagSparsity(), SCIPnlpiOracleGetJacobianSparsity(), SCIPpackCirclesGreedy(), SCIPprimalTransformSol(), SCIPprobdataAddNewSol(), SCIPprobdataEnumeratePatterns(), SCIPptrarrayClear(), SCIPrealarrayClear(), SCIPreoptAddCons(), SCIPseparateRelaxedKnapsack(), SCIPsetModifiedDefaultSettingsIpopt(), SCIPshrinkDisjunctiveVarSet(), SCIPStpHeurAscendPruneRun(), SCIPStpHeurLocalExtendPcMw(), SCIPStpHeurLocalRun(), SCIPStpHeurRecExclude(), SCIPStpHeurTMRun(), SCIPwritePbm(), searchEcAggrWithCliques(), separateCuts(), separateGLS(), separateHeur(), sequentialUpAndDownLifting(), sequentialUpAndDownLiftingGUB(), setColumnMajorFormat(), setupAggregationData(), shortenConss(), singletonColumnStuffing(), stableSort(), superadditiveUpLifting(), tcliqueAddEdge(), tcliqueColoring(), tcliquegraphConstructCliqueTable(), tryUpgradingXor(), updatePrimalRay(), and updateVariableDegrees().

◆ BMSclearMemorySize

#define BMSclearMemorySize (   ptr,
  size 
)    BMSclearMemory_call( (void*)(ptr), (size_t)(ptrdiff_t)(size) )

◆ BMScopyMemory

#define BMScopyMemory (   ptr,
  source 
)    BMScopyMemory_call( (void*)(ptr), (const void*)(source), sizeof(*(ptr)) )

Definition at line 122 of file memory.h.

◆ BMScopyMemoryArray

#define BMScopyMemoryArray (   ptr,
  source,
  num 
)    BMScopyMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(num)*sizeof(*(ptr)) )

Definition at line 123 of file memory.h.

Referenced by computeConsAndDataChanges(), computeDaSolPcMw(), computePertubedSol(), conflictsetCopy(), createSolTuple(), cutsRoundMIR(), cutsRoundStrongCG(), DECL_VARFIXINGS(), determineVariableFixings(), evaluateWorhpRun(), extendCliqueZeroWeight(), F77_FUNC(), filterPatterns(), graph_copy_data(), heurExec(), initWorhp(), level0save(), mergeAndCleanQuadVarTerms(), mod2rowAddRow(), newSolution(), nlrowaggrCreate(), nlrowaggrStoreLinearTerms(), nlrowaggrStoreQuadraticVars(), polynomialdataAddMonomials(), reduce_da(), reduce_daPcMw(), reducePcMwTryBest(), removeConstraintsDueToNegCliques(), rollingHorizonStoreDistances(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSGETVARS(), SCIP_DECL_CONSSEPALP(), SCIP_DECL_CONSTRANS(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), SCIP_DECL_NLPISETINITIALGUESS(), SCIP_DECL_NLPISOLVE(), SCIPaddRowprepTerms(), SCIPboolarrayExtend(), SCIPcalcMIR(), SCIPcalcStrongCG(), SCIPconshdlrsStorePropagationStatus(), SCIPcreateConsPseudobooleanWithConss(), SCIPcutGenerationHeuristicCMIR(), SCIPdigraphComputeUndirectedComponents(), SCIPexprAddMonomialFactors(), SCIPexprAddToLinear(), SCIPexprCreateLinear(), SCIPexprgraphAddExprtreeSum(), SCIPexprgraphCreateNodeLinear(), SCIPexprgraphReplaceVarByLinearSum(), SCIPexprgraphSetVarsBounds(), SCIPexprtreeAddVars(), SCIPexprtreeSetParams(), SCIPexprtreeSetVars(), SCIPgetBinvarRepresentatives(), SCIPgetRandomSubset(), SCIPheurPassIndicator(), SCIPintarrayExtend(), SCIPnlpiOracleAddVars(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleGetJacobianSparsity(), SCIPnlpSetInitialGuess(), SCIPptrarrayExtend(), SCIPrandomGetSubset(), SCIPrealarrayExtend(), SCIPsetModifiedDefaultSettingsIpopt(), SCIPsolveLinearProb(), SCIPsolveLinearProb3(), SCIPStpHeurLocalExtendPcMw(), SCIPStpHeurPruneRun(), SCIPStpHeurPruneUpdateSols(), SCIPStpHeurRecAddToPool(), SCIPStpHeurRecRun(), SCIPStpHeurSlackPruneRun(), SCIPStpHeurTMRun(), SCIPStpHeurTMRunLP(), SCIPvarsGetActiveVars(), selectBranchingVertexBySol(), selectVarRecursive(), tcliqueColoring(), tcliqueLoadFile(), tryToInsert(), and xmlProcess().

◆ BMScopyMemorySize

#define BMScopyMemorySize (   ptr,
  source,
  size 
)    BMScopyMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(size) )

◆ BMSmoveMemory

#define BMSmoveMemory (   ptr,
  source 
)    BMSmoveMemory_call( (void*)(ptr), (const void*)(source), sizeof(*(ptr)) )

Definition at line 126 of file memory.h.

◆ BMSmoveMemoryArray

#define BMSmoveMemoryArray (   ptr,
  source,
  num 
)    BMSmoveMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(num) * sizeof(*(ptr)) )

◆ BMSmoveMemorySize

#define BMSmoveMemorySize (   ptr,
  source,
  size 
)    BMSmoveMemory_call( (void*)(ptr), (const void*)(source), (size_t)(ptrdiff_t)(size) )

Definition at line 128 of file memory.h.

◆ BMSduplicateMemory

#define BMSduplicateMemory (   ptr,
  source 
)    ASSIGN((ptr), BMSduplicateMemory_call( (const void*)(source), sizeof(**(ptr)), __FILE__, __LINE__ ))

Definition at line 130 of file memory.h.

◆ BMSduplicateMemorySize

#define BMSduplicateMemorySize (   ptr,
  source,
  size 
)    ASSIGN((ptr), BMSduplicateMemory_call( (const void*)(source), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ ))

Definition at line 131 of file memory.h.

◆ BMSduplicateMemoryArray

◆ BMSfreeMemory

#define BMSfreeMemory (   ptr)    BMSfreeMemory_call( (void**)(ptr), __FILE__, __LINE__ )

Definition at line 134 of file memory.h.

Referenced by BMSdestroyBlockMemory_call(), BMSdestroyBufferMemory_call(), BMSfreeBufferMemory_call(), BMSfreeBufferMemoryNull_call(), create_graph(), destroyChkmem(), destroyChunk(), dialogFree(), free_graph(), freeClique(), freeCliquehash(), freeJobQueue(), freeReoptTree(), freeSolTree(), freeThreadPool(), linelistFree(), messagehdlrFree(), popPstack(), SCIP_DECL_CONCSOLVERDESTROYINST(), SCIP_DECL_CONCSOLVERTYPEFREEDATA(), SCIPactivityFree(), SCIPbanditvtableFree(), SCIPbenderscutFree(), SCIPbendersFree(), SCIPbranchcandFree(), SCIPbranchruleFree(), SCIPcliquetableFree(), SCIPclockFree(), SCIPcomprFree(), SCIPconcsolverDestroyInstance(), SCIPconcsolverTypeFree(), SCIPconflictFree(), SCIPconflicthdlrFree(), SCIPconshdlrFree(), SCIPcutpoolFree(), SCIPdialogCreate(), SCIPdialoghdlrAddInputLine(), SCIPdialoghdlrFree(), SCIPdispFree(), SCIPeventhdlrFree(), SCIPeventqueueFree(), SCIPfree(), SCIPheurFree(), SCIPinterruptFree(), SCIPlpFree(), SCIPmemFree(), SCIPmessageVFPrintDialog(), SCIPmessageVFPrintInfo(), SCIPmessageVFPrintVerbInfo(), SCIPmessageVFPrintWarning(), SCIPmessageVPrintError(), SCIPnlpFree(), SCIPnlpiFree(), SCIPnlpiOracleFree(), SCIPnodepqDestroy(), SCIPnodeselFree(), SCIPparamsetFree(), SCIPpqueueFree(), SCIPpresolFree(), SCIPpricerFree(), SCIPpricestoreFree(), SCIPprimalFree(), SCIPprobFree(), SCIPprofileFree(), SCIPpropFree(), SCIPqueueFree(), SCIPreaderFree(), SCIPregressionFree(), SCIPrelaxationFree(), SCIPrelaxFree(), SCIPreoptFree(), SCIPsepaFree(), SCIPsepastoreFree(), SCIPsetFree(), SCIPsparseSolFree(), SCIPstatFree(), SCIPsyncstoreRelease(), SCIPtableFree(), SCIPtreeFree(), SCIPvisualFree(), tcliqueFree(), xmlFreeAttr(), and xmlFreeNode().

◆ BMSfreeMemoryNull

#define BMSfreeMemoryNull (   ptr)    BMSfreeMemoryNull_call( (void**)(ptr), __FILE__, __LINE__ )

Definition at line 135 of file memory.h.

Referenced by SCIPconflictstoreFree(), and SCIPlpFree().

◆ BMSfreeMemoryArray

◆ BMSfreeMemoryArrayNull

◆ BMSfreeMemorySize

#define BMSfreeMemorySize (   ptr)    BMSfreeMemory_call( (void**)(ptr), __FILE__, __LINE__ )

Definition at line 138 of file memory.h.

◆ BMSfreeMemorySizeNull

#define BMSfreeMemorySizeNull (   ptr)    BMSfreeMemoryNull_call( (void**)(ptr), __FILE__, __LINE__ )

Definition at line 139 of file memory.h.

◆ BMSgetPointerSize

#define BMSgetPointerSize (   ptr)    BMSgetPointerSize_call(ptr)

Definition at line 142 of file memory.h.

◆ BMSdisplayMemory

#define BMSdisplayMemory ( )    BMSdisplayMemory_call()

Definition at line 143 of file memory.h.

Referenced by SCIPprintMemoryDiagnostic().

◆ BMScheckEmptyMemory

#define BMScheckEmptyMemory ( )    BMScheckEmptyMemory_call()

Definition at line 144 of file memory.h.

Referenced by execmain(), main(), runSCIP(), runShell(), SCIPrunColoringShell(), SCIPrunCyc(), and SCIPrunShell().

◆ BMSgetMemoryUsed

#define BMSgetMemoryUsed ( )    BMSgetMemoryUsed_call()

Definition at line 145 of file memory.h.

Referenced by branch().

◆ BMScreateChunkMemory

#define BMScreateChunkMemory (   sz,
  isz,
  gbf 
)    BMScreateChunkMemory_call( (sz), (isz), (gbf), __FILE__, __LINE__ )

Definition at line 296 of file memory.h.

Referenced by tcliqueMaxClique().

◆ BMSclearChunkMemory

#define BMSclearChunkMemory (   mem)    BMSclearChunkMemory_call( (mem), __FILE__, __LINE__ )

Definition at line 297 of file memory.h.

Referenced by tcliqueColoring().

◆ BMSdestroyChunkMemory

#define BMSdestroyChunkMemory (   mem)    BMSdestroyChunkMemory_call( (mem), __FILE__, __LINE__ )

Definition at line 298 of file memory.h.

Referenced by tcliqueMaxClique().

◆ BMSallocChunkMemory

#define BMSallocChunkMemory (   mem,
  ptr 
)    ASSIGN((ptr), BMSallocChunkMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 300 of file memory.h.

Referenced by tcliqueColoring(), and updateNeighbor().

◆ BMSduplicateChunkMemory

#define BMSduplicateChunkMemory (   mem,
  ptr,
  source 
)
Value:
ASSIGN((ptr), BMSduplicateChunkMemory_call((mem), (const void*)(source), \
sizeof(**(ptr)), __FILE__, __LINE__ ))
void * BMSduplicateChunkMemory_call(BMS_CHKMEM *chkmem, const void *source, size_t size, const char *filename, int line)
Definition: memory.c:1543
#define ASSIGN(pointerstarstar, voidstarfunction)
Definition: memory.h:72

Definition at line 301 of file memory.h.

◆ BMSfreeChunkMemory

#define BMSfreeChunkMemory (   mem,
  ptr 
)    BMSfreeChunkMemory_call( (mem), (void**)(ptr), sizeof(**(ptr)), __FILE__, __LINE__ )

Definition at line 303 of file memory.h.

Referenced by tcliqueColoring(), and updateNeighbor().

◆ BMSfreeChunkMemoryNull

#define BMSfreeChunkMemoryNull (   mem,
  ptr 
)    BMSfreeChunkMemoryNull_call( (mem), (void**)(ptr) )

Definition at line 304 of file memory.h.

◆ BMSgarbagecollectChunkMemory

#define BMSgarbagecollectChunkMemory (   mem)    BMSgarbagecollectChunkMemory_call(mem)

Definition at line 305 of file memory.h.

◆ BMSgetChunkMemoryUsed

#define BMSgetChunkMemoryUsed (   mem)    BMSgetChunkMemoryUsed_call(mem)

Definition at line 306 of file memory.h.

Referenced by branch().

◆ BMScreateBlockMemory

#define BMScreateBlockMemory (   csz,
  gbf 
)    BMScreateBlockMemory_call( (csz), (gbf), __FILE__, __LINE__ )

Definition at line 436 of file memory.h.

Referenced by SCIPmemCreate().

◆ BMSclearBlockMemory

#define BMSclearBlockMemory (   mem)    BMSclearBlockMemory_call( (mem), __FILE__, __LINE__ )

Definition at line 437 of file memory.h.

◆ BMSdestroyBlockMemory

#define BMSdestroyBlockMemory (   mem)    BMSdestroyBlockMemory_call( (mem), __FILE__, __LINE__ )

Definition at line 438 of file memory.h.

Referenced by SCIPmemFree().

◆ BMSallocBlockMemory

#define BMSallocBlockMemory (   mem,
  ptr 
)    ASSIGN((ptr), BMSallocBlockMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 440 of file memory.h.

Referenced by addGlobalCut(), btnodeCreateEmpty(), checkMemDualCons(), cliqueCreateWithData(), cliquelistCreate(), collectDualInformation(), colStoreSolVals(), conflictsetCopy(), conflictsetCreate(), conssetchgCreate(), createConstraint(), createReoptnode(), createSolTree(), cutCreate(), exprCreate(), exprgraphCreateNode(), exprUnconvertPolynomial(), forkCreate(), forkFree(), holelistCreate(), implicsCreate(), mod2MatrixAddOrigRow(), multihashlistAppend(), nodeCreate(), paramCreate(), polynomialdataCreate(), probingnodeCreate(), proofsetCreate(), pseudoforkCreate(), quadraticdataCreate(), rowStoreSolVals(), saveLocalConssData(), SCIP_DECL_NLPICREATEPROBLEM(), SCIPbanditCreate(), SCIPbanditCreateEpsgreedy(), SCIPbanditCreateExp3(), SCIPbanditCreateUcb(), SCIPbdchginfoCreate(), SCIPboolarrayCreate(), SCIPbtCreate(), SCIPcolCreate(), SCIPconsCreate(), SCIPcreateNlpSolverAll(), SCIPcreateNlpSolverFilterSQP(), SCIPcreateNlpSolverWorhp(), SCIPdigraphCopy(), SCIPdigraphCreate(), SCIPdisjointsetCreate(), SCIPdivesetCreate(), SCIPeventCreateGholeAdded(), SCIPeventCreateGholeRemoved(), SCIPeventCreateGlbChanged(), SCIPeventCreateGubChanged(), SCIPeventCreateImplAdded(), SCIPeventCreateLbChanged(), SCIPeventCreateLholeAdded(), SCIPeventCreateLholeRemoved(), SCIPeventCreateObjChanged(), SCIPeventCreateRowAddedLP(), SCIPeventCreateRowAddedSepa(), SCIPeventCreateRowCoefChanged(), SCIPeventCreateRowConstChanged(), SCIPeventCreateRowDeletedLP(), SCIPeventCreateRowDeletedSepa(), SCIPeventCreateRowSideChanged(), SCIPeventCreateSync(), SCIPeventCreateUbChanged(), SCIPeventCreateVarAdded(), SCIPeventCreateVarDeleted(), SCIPeventCreateVarFixed(), SCIPeventCreateVarUnlocked(), SCIPeventfilterCreate(), SCIPexprCreateMonomial(), SCIPexprCreateUser(), SCIPexprgraphCreate(), SCIPexprgraphCreateNodeUser(), SCIPexprintCreate(), SCIPexprtreeCreate(), SCIPhashmapCreate(), SCIPhashsetCreate(), SCIPhashtableCreate(), SCIPhistoryCreate(), SCIPintarrayCreate(), SCIPmultihashCreate(), SCIPnlpStatisticsCreate(), SCIPnlrowCreate(), SCIPptrarrayCreate(), SCIPrandomCreate(), SCIPrealarrayCreate(), SCIPreoptnodeAddCons(), SCIPreoptSplitRoot(), SCIProwCreate(), SCIPsolCopy(), SCIPsolCreate(), SCIPsolCreateOriginal(), SCIPsolCreatePartial(), SCIPsolCreateUnknown(), SCIPvaluehistoryCreate(), solnodeAddChild(), varCreate(), and vboundsCreate().

◆ BMSallocBlockMemorySize

#define BMSallocBlockMemorySize (   mem,
  ptr,
  size 
)    ASSIGN((ptr), BMSallocBlockMemory_call((mem), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))

Definition at line 441 of file memory.h.

Referenced by domchgCreate().

◆ BMSallocBlockMemoryArray

#define BMSallocBlockMemoryArray (   mem,
  ptr,
  num 
)    ASSIGN((ptr), BMSallocBlockMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 442 of file memory.h.

Referenced by addGlobalCut(), checkMemDualCons(), checkMemGlbCons(), conflictsetCopy(), conflictstoreAddOrigConflict(), conflictstoreEnsureMem(), createReopttree(), createSolTree(), ensureSuccessorsSize(), evalFunctionGradient(), evalFunctionValue(), evaluateWorhpRun(), exprgraphAddExpr(), exprgraphFindParentByOperator(), exprgraphNodeCreateExpr(), exprgraphNodePropagateBounds(), exprgraphNodeRemovePolynomialDuplicateChildren(), exprgraphNodeRemovePolynomialNullChildren(), exprgraphNodeSimplify(), exprsimplifyRemoveDuplicatePolynomialChildren(), exprsimplifyRemovePolynomialNullChildren(), exprsimplifyRemovePolynomialUnusedChildren(), exprsimplifySeparateLinearFromPolynomial(), exprUnconvertPolynomial(), hashmapCheckLoad(), hashtableCheckLoad(), hessLagAddExprtree(), hessLagSparsitySetNzFlagForExprtree(), nlpCalcFracVars(), polynomialdataCopy(), polynomialdataCreate(), printFunction(), processSolveOutcome(), reoptnodeCheckMemory(), saveAfterDualBranchings(), saveConsLinear(), SCIP_DECL_NLPICREATEPROBLEM(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), SCIP_DECL_NLPISETINITIALGUESS(), SCIP_DECL_NLPISOLVE(), SCIPbanditCreateEpsgreedy(), SCIPbanditCreateExp3(), SCIPbanditCreateUcb(), SCIPbenderscutInit(), SCIPboolarrayExtend(), SCIPcolCreate(), SCIPconflictstoreAddDualraycons(), SCIPconflictstoreAddDualsolcons(), SCIPcreateNlpSolverAll(), SCIPdigraphComputeUndirectedComponents(), SCIPdigraphSetSizes(), SCIPdisjointsetCreate(), SCIPexprCopyDeep(), SCIPexprCreate(), SCIPexprCreateLinear(), SCIPexprCreateMonomial(), SCIPexprgraphAddExprtreeSum(), SCIPexprgraphCreateNodeLinear(), SCIPexprgraphGetSeparableTrees(), SCIPexprgraphGetSumTrees(), SCIPexprgraphGetTree(), SCIPexprgraphNodeSplitOffLinear(), SCIPexprgraphReplaceVarByLinearSum(), SCIPexprtreeCreate(), SCIPexprtreeRemoveFixedVars(), SCIPhashmapCreate(), SCIPhashtableCreate(), SCIPintarrayExtend(), SCIPnlpiOracleAddVars(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleGetHessianLagSparsity(), SCIPnlpiOracleGetJacobianSparsity(), SCIPptrarrayExtend(), SCIPrealarrayExtend(), SCIPreoptAddRun(), SCIPreoptCreate(), SCIPreoptUpdateVarHistory(), SCIProwCreate(), SCIPtreeCreate(), SCIPvaluehistoryCreate(), setupGradients(), setupHessian(), transformDualredsToLinear(), userDG(), and userHM().

◆ BMSallocClearBlockMemoryArray

#define BMSallocClearBlockMemoryArray (   mem,
  ptr,
  num 
)    ASSIGN((ptr), BMSallocClearBlockMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))

◆ BMSreallocBlockMemorySize

#define BMSreallocBlockMemorySize (   mem,
  ptr,
  oldsize,
  newsize 
)
Value:
ASSIGN((ptr), BMSreallocBlockMemory_call((mem), (void*)(*(ptr)), \
(size_t)(ptrdiff_t)(oldsize), (size_t)(ptrdiff_t)(newsize), __FILE__, __LINE__))
void * BMSreallocBlockMemory_call(BMS_BLKMEM *blkmem, void *ptr, size_t oldsize, size_t newsize, const char *filename, int line)
Definition: memory.c:1939
#define ASSIGN(pointerstarstar, voidstarfunction)
Definition: memory.h:72

Definition at line 444 of file memory.h.

Referenced by domchgMakeDynamic(), SCIPdomchgMakeStatic(), and SCIPensureBlockMemoryArray_call().

◆ BMSreallocBlockMemoryArray

#define BMSreallocBlockMemoryArray (   mem,
  ptr,
  oldnum,
  newnum 
)
Value:
ASSIGN((ptr), BMSreallocBlockMemoryArray_call((mem), (void*)(*(ptr)), \
(size_t)(ptrdiff_t)(oldnum), (size_t)(ptrdiff_t)(newnum), sizeof(**(ptr)), __FILE__, __LINE__))
void * BMSreallocBlockMemoryArray_call(BMS_BLKMEM *blkmem, void *ptr, size_t oldnum, size_t newnum, size_t typesize, const char *filename, int line)
Definition: memory.c:1979
#define ASSIGN(pointerstarstar, voidstarfunction)
Definition: memory.h:72

Definition at line 446 of file memory.h.

Referenced by addGlobalCut(), checkMemDualCons(), checkMemGlbCons(), cliqueEnsureSize(), cliquelistEnsureSize(), colEnsureSize(), conflictsetEnsureBdchginfosMem(), conflictstoreAddOrigConflict(), conflictstoreEnsureMem(), conssetchgEnsureAddedconssSize(), conssetchgEnsureDisabledconssSize(), domchgEnsureBoundchgsSize(), domchgEnsureHolechgsSize(), ensureConsLinSize(), ensureConsQuadSize(), ensureConssSize(), ensureElemSize(), ensureIntArraySize(), ensureRunSize(), ensureSolsSize(), ensureSuccessorsSize(), ensureVarsSize(), eventfilterEnsureMem(), exprgraphNodeAddChildren(), exprgraphNodeRemovePolynomialNullChildren(), exprsimplifyAddChildren(), exprsimplifyFlattenPolynomials(), exprsimplifyRemovePolynomialNullChildren(), implicsEnsureSize(), monomialdataEnsureFactorsSize(), nlpCalcFracVars(), nlpEnsureNlRowsSolverSize(), nlpEnsureVarsSolverSize(), proofsetAddSparseData(), reoptnodeCheckMemory(), reopttreeCheckMemory(), saveAfterDualBranchings(), SCIP_DECL_NLPIADDCONSTRAINTS(), SCIP_DECL_NLPIADDVARS(), SCIP_DECL_NLPISOLVE(), SCIPbenderscutStoreCut(), SCIPdigraphComputeUndirectedComponents(), SCIPdigraphResize(), SCIPdomchgMakeStatic(), SCIPexprAddToLinear(), SCIPexprgraphNodeSplitOffLinear(), SCIPexprtreeAddVars(), SCIPexprtreeRemoveFixedVars(), SCIPexprtreeSetParams(), SCIPexprtreeSetVars(), SCIPnlpEnsureNlRowsSize(), SCIPnlpEnsureVarsSize(), SCIPnlpiOracleGetJacobianSparsity(), SCIPnlrowEnsureLinearSize(), SCIPnlrowEnsureQuadElementsSize(), SCIPnlrowEnsureQuadVarsSize(), SCIPreoptAddCons(), SCIProwEnsureSize(), SCIPtreeAddDiveBoundChange(), SCIPvaluehistoryFind(), SCIPvarFlattenAggregationGraph(), SCIPvarMultiaggregate(), varEnsureLbchginfosSize(), varEnsureParentvarsSize(), varEnsureUbchginfosSize(), and vboundsEnsureSize().

◆ BMSduplicateBlockMemory

#define BMSduplicateBlockMemory (   mem,
  ptr,
  source 
)
Value:
ASSIGN((ptr), BMSduplicateBlockMemory_call((mem), (const void*)(source), \
sizeof(**(ptr)), __FILE__, __LINE__ ))
void * BMSduplicateBlockMemory_call(BMS_BLKMEM *blkmem, const void *source, size_t size, const char *filename, int line)
Definition: memory.c:2018
#define ASSIGN(pointerstarstar, voidstarfunction)
Definition: memory.h:72

Definition at line 448 of file memory.h.

Referenced by polynomialdataCopy(), SCIP_DECL_EXPRCOPYDATA(), SCIPexprCopyDeep(), and SCIPexprtreeCopy().

◆ BMSduplicateBlockMemoryArray

#define BMSduplicateBlockMemoryArray (   mem,
  ptr,
  source,
  num 
)
Value:
ASSIGNCHECK((ptr), BMSduplicateBlockMemoryArray_call( (mem), (const void*)(source), \
(size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__ ), source)
void * BMSduplicateBlockMemoryArray_call(BMS_BLKMEM *blkmem, const void *source, size_t num, size_t typesize, const char *filename, int line)
Definition: memory.c:2038
#define ASSIGNCHECK(pointerstarstar, voidstarfunction, origpointer)
Definition: memory.h:73

Definition at line 450 of file memory.h.

Referenced by cliqueCreateWithData(), collectDualInformation(), createConstraint(), evaluateWorhpRun(), forkCreate(), forkFree(), polynomialdataCreate(), proofsetAddSparseData(), pseudoforkCreate(), quadraticdataCreate(), saveConsBounddisjuction(), SCIP_DECL_EXPRCOPYDATA(), SCIPboolarrayCopy(), SCIPcliquelistDel(), SCIPcolCreate(), SCIPconsChgName(), SCIPconsCreate(), SCIPdigraphCopy(), SCIPexprCreate(), SCIPexprCreateLinear(), SCIPexprCreateMonomial(), SCIPexprCreatePolynomial(), SCIPexprCreateQuadratic(), SCIPexprCreateUser(), SCIPexprgraphAddNode(), SCIPexprtreeAddVars(), SCIPexprtreeCopy(), SCIPexprtreeCreate(), SCIPexprtreeSetParams(), SCIPexprtreeSetVars(), SCIPintarrayCopy(), SCIPnlpCreate(), SCIPnlpiOracleAddVars(), SCIPnlpiOracleChgExprtree(), SCIPnlpiOracleChgLinearCoefs(), SCIPnlpiOracleChgQuadCoefs(), SCIPnlpiOracleSetProblemName(), SCIPnlpSetInitialGuess(), SCIPnlrowCreate(), SCIPptrarrayCopy(), SCIPrealarrayCopy(), SCIPreoptnodeAddCons(), SCIProwCreate(), SCIPvarMultiaggregate(), transformDualredsToBounddisjunction(), transformDualredsToLinear(), and varSetName().

◆ BMSfreeBlockMemory

◆ BMSfreeBlockMemoryNull

#define BMSfreeBlockMemoryNull (   mem,
  ptr 
)    BMSfreeBlockMemoryNull_call( (mem), (void**)(ptr), sizeof(**(ptr)), __FILE__, __LINE__ )

◆ BMSfreeBlockMemoryArray

#define BMSfreeBlockMemoryArray (   mem,
  ptr,
  num 
)    BMSfreeBlockMemory_call( (mem), (void**)(ptr), (num)*sizeof(**(ptr)), __FILE__, __LINE__ )

Definition at line 455 of file memory.h.

Referenced by changeAncestorBranchings(), evalFunctionGradient(), evalFunctionValue(), exprgraphAddExpr(), exprgraphFindParentByOperator(), exprgraphNodePropagateBounds(), exprgraphNodeRemovePolynomialDuplicateChildren(), exprgraphNodeRemovePolynomialNullChildren(), exprgraphNodeSimplify(), exprsimplifyFlattenPolynomials(), exprsimplifyRemoveDuplicatePolynomialChildren(), exprsimplifyRemovePolynomialNullChildren(), exprsimplifyRemovePolynomialUnusedChildren(), exprsimplifySeparateLinearFromPolynomial(), freeReoptTree(), freeSolTree(), freeVariables(), hashmapCheckLoad(), hashsetCheckLoad(), hashtableCheckLoad(), hessLagAddExprtree(), hessLagSparsitySetNzFlagForExprtree(), invalidateHessianLagSparsity(), invalidateJacobiSparsity(), multihashResize(), nlrowRemoveFixedQuadVars(), polynomialdataFree(), printFunction(), reoptnodeDelete(), reoptnodeReset(), reoptnodeResetDualConss(), reoptnodeUpdateDualConss(), SCIP_DECL_BANDITFREE(), SCIP_DECL_EXPRFREEDATA(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), SCIPbenderscutExit(), SCIPcliquelistDel(), SCIPconsChgName(), SCIPconsFree(), SCIPdigraphFree(), SCIPdigraphFreeComponents(), SCIPdisjointsetFree(), SCIPexprFreeDeep(), SCIPexprFreeMonomial(), SCIPexprgraphAddExprtreeSum(), SCIPexprgraphFree(), SCIPexprgraphGetSeparableTrees(), SCIPexprgraphGetSumTrees(), SCIPexprgraphGetTree(), SCIPexprgraphNodeSplitOffLinear(), SCIPexprtreeRemoveFixedVars(), SCIPhashmapFree(), SCIPhashsetFree(), SCIPhashtableFree(), SCIPmultihashFree(), SCIPnlpFree(), SCIPnlpiOracleChgExprtree(), SCIPnlpiOracleDelVarSet(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleGetHessianLagSparsity(), SCIPnlpiOracleGetJacobianSparsity(), SCIPnlpiOracleSetProblemName(), SCIPnlrowFree(), SCIPreoptApplyCuts(), SCIPreoptFree(), SCIPreoptReleaseData(), SCIProwFree(), SCIPtreeFree(), SCIPvaluehistoryFree(), SCIPvarChgName(), SCIPvarMultiaggregate(), setupStart(), userDG(), userHM(), and varFree().

◆ BMSfreeBlockMemoryArrayNull

#define BMSfreeBlockMemoryArrayNull (   mem,
  ptr,
  num 
)    BMSfreeBlockMemoryNull_call( (mem), (void**)(ptr), (num)*sizeof(**(ptr)), __FILE__, __LINE__ )

Definition at line 456 of file memory.h.

Referenced by cliqueFree(), conflictsetFree(), evalFunctionGradient(), exprgraphNodeCreateExpr(), exprgraphNodeSimplify(), exprsimplifyFlattenPolynomials(), forkFree(), freeConstraint(), freeConstraints(), freeVariables(), hessLagAddExprtree(), invalidateSolution(), proofsetFree(), pseudoforkFree(), reoptnodeDelete(), SCIP_DECL_NLPIADDCONSTRAINTS(), SCIP_DECL_NLPIADDVARS(), SCIP_DECL_NLPICHGEXPRTREE(), SCIP_DECL_NLPICHGLINEARCOEFS(), SCIP_DECL_NLPICHGNONLINCOEF(), SCIP_DECL_NLPICHGQUADCOEFS(), SCIP_DECL_NLPIDELCONSSET(), SCIP_DECL_NLPIDELVARSET(), SCIP_DECL_NLPIFREE(), SCIP_DECL_NLPIFREEPROBLEM(), SCIP_DECL_NLPISETINITIALGUESS(), SCIP_DECL_NLPISETOBJECTIVE(), SCIPboolarrayExtend(), SCIPboolarrayFree(), SCIPcliquelistFree(), SCIPcolFree(), SCIPconflictstoreFree(), SCIPconssetchgFree(), SCIPdigraphFree(), SCIPdomchgFree(), SCIPdomchgMakeStatic(), SCIPeventfilterFree(), SCIPexprFreeShallow(), SCIPexprgraphFree(), SCIPexprgraphFreeNode(), SCIPexprgraphGetSeparableTrees(), SCIPexprgraphSimplify(), SCIPexprtreeFree(), SCIPexprtreeSetParams(), SCIPexprtreeSetVars(), SCIPimplicsFree(), SCIPintarrayExtend(), SCIPintarrayFree(), SCIPnlpFree(), SCIPnlpiOracleDelVarSet(), SCIPnlpiOracleEvalJacobian(), SCIPnlpiOracleGetHessianLagSparsity(), SCIPnlpReset(), SCIPnlrowFree(), SCIPptrarrayExtend(), SCIPptrarrayFree(), SCIPrealarrayExtend(), SCIPrealarrayFree(), SCIPreoptApplyCuts(), SCIProwFree(), SCIPvboundsFree(), subrootFree(), varFree(), and varFreeParents().

◆ BMSfreeBlockMemorySize

#define BMSfreeBlockMemorySize (   mem,
  ptr,
  size 
)    BMSfreeBlockMemory_call( (mem), (void**)(ptr), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )

Definition at line 457 of file memory.h.

Referenced by SCIPdomchgFree().

◆ BMSfreeBlockMemorySizeNull

#define BMSfreeBlockMemorySizeNull (   mem,
  ptr,
  size 
)    BMSfreeBlockMemory_call( (mem), (void**)(ptr), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__ )

Definition at line 458 of file memory.h.

◆ BMSgarbagecollectBlockMemory

#define BMSgarbagecollectBlockMemory (   mem)    BMSgarbagecollectBlockMemory_call(mem)

Definition at line 460 of file memory.h.

Referenced by SCIPtransformProb().

◆ BMSgetBlockMemoryAllocated

#define BMSgetBlockMemoryAllocated (   mem)    BMSgetBlockMemoryAllocated_call(mem)

Definition at line 461 of file memory.h.

Referenced by SCIPmemGetTotal().

◆ BMSgetBlockMemoryUsed

#define BMSgetBlockMemoryUsed (   mem)    BMSgetBlockMemoryUsed_call(mem)

Definition at line 462 of file memory.h.

Referenced by SCIPmemGetUsed().

◆ BMSgetBlockMemoryUnused

#define BMSgetBlockMemoryUnused (   mem)    BMSgetBlockMemoryUnused_call(mem)

Definition at line 463 of file memory.h.

◆ BMSgetBlockMemoryUsedMax

#define BMSgetBlockMemoryUsedMax (   mem)    BMSgetBlockMemoryUsedMax_call(mem)

Definition at line 464 of file memory.h.

Referenced by SCIPmemGetUsedBlockmemoryMax().

◆ BMSgetBlockMemoryUnusedMax

#define BMSgetBlockMemoryUnusedMax (   mem)    BMSgetBlockMemoryUnusedMax_call(mem)

Definition at line 465 of file memory.h.

Referenced by SCIPmemGetUnusedBlockmemoryMax().

◆ BMSgetBlockMemoryAllocatedMax

#define BMSgetBlockMemoryAllocatedMax (   mem)    BMSgetBlockMemoryAllocatedMax_call(mem)

Definition at line 466 of file memory.h.

Referenced by SCIPmemGetAllocatedBlockmemoryMax().

◆ BMSgetBlockPointerSize

#define BMSgetBlockPointerSize (   mem,
  ptr 
)    BMSgetBlockPointerSize_call((mem), (ptr))

Definition at line 467 of file memory.h.

◆ BMSdisplayBlockMemory

#define BMSdisplayBlockMemory (   mem)    BMSdisplayBlockMemory_call(mem)

Definition at line 468 of file memory.h.

Referenced by SCIPprintMemoryDiagnostic().

◆ BMSblockMemoryCheckEmpty

#define BMSblockMemoryCheckEmpty (   mem)    BMScheckEmptyBlockMemory_call(mem)

Definition at line 469 of file memory.h.

Referenced by SCIPmemFree().

◆ BMSallocBufferMemory

#define BMSallocBufferMemory (   mem,
  ptr 
)    ASSIGN((ptr), BMSallocBufferMemory_call((mem), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 705 of file memory.h.

◆ BMSallocBufferMemorySize

#define BMSallocBufferMemorySize (   mem,
  ptr,
  size 
)    ASSIGN((ptr), BMSallocBufferMemory_call((mem), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))

Definition at line 706 of file memory.h.

◆ BMSreallocBufferMemorySize

#define BMSreallocBufferMemorySize (   mem,
  ptr,
  size 
)    ASSIGN((ptr), BMSreallocBufferMemory_call((mem), (void*)(*(ptr)), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))

Definition at line 707 of file memory.h.

◆ BMSallocBufferMemoryArray

#define BMSallocBufferMemoryArray (   mem,
  ptr,
  num 
)    ASSIGN((ptr), BMSallocBufferMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 709 of file memory.h.

◆ BMSallocClearBufferMemoryArray

#define BMSallocClearBufferMemoryArray (   mem,
  ptr,
  num 
)    ASSIGN((ptr), BMSallocClearBufferMemoryArray_call((mem), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__))

Definition at line 710 of file memory.h.

◆ BMSreallocBufferMemoryArray

#define BMSreallocBufferMemoryArray (   mem,
  ptr,
  num 
)
Value:
ASSIGN((ptr), BMSreallocBufferMemoryArray_call((mem), (void*)(*(ptr)), (size_t)(ptrdiff_t)(num), \
sizeof(**(ptr)), __FILE__, __LINE__))
void * BMSreallocBufferMemoryArray_call(BMS_BUFMEM *buffer, void *ptr, size_t num, size_t typesize, const char *filename, int line)
Definition: memory.c:2910
#define ASSIGN(pointerstarstar, voidstarfunction)
Definition: memory.h:72

Definition at line 711 of file memory.h.

◆ BMSduplicateBufferMemory

#define BMSduplicateBufferMemory (   mem,
  ptr,
  source,
  size 
)    ASSIGN((ptr), BMSduplicateBufferMemory_call((mem), (const void*)(source), (size_t)(ptrdiff_t)(size), __FILE__, __LINE__))

Definition at line 713 of file memory.h.

◆ BMSduplicateBufferMemoryArray

#define BMSduplicateBufferMemoryArray (   mem,
  ptr,
  source,
  num 
)
Value:
(const void*)(source), (size_t)(ptrdiff_t)(num), sizeof(**(ptr)), __FILE__, __LINE__), source)
#define ASSIGNCHECK(pointerstarstar, voidstarfunction, origpointer)
Definition: memory.h:73
void * BMSduplicateBufferMemoryArray_call(BMS_BUFMEM *buffer, const void *source, size_t num, size_t typesize, const char *filename, int line)
Definition: memory.c:2955

Definition at line 715 of file memory.h.

Referenced by dataReset().

◆ BMSfreeBufferMemory

#define BMSfreeBufferMemory (   mem,
  ptr 
)    BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__)

Definition at line 718 of file memory.h.

◆ BMSfreeBufferMemoryNull

#define BMSfreeBufferMemoryNull (   mem,
  ptr 
)    BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)

Definition at line 719 of file memory.h.

◆ BMSfreeBufferMemoryArray

#define BMSfreeBufferMemoryArray (   mem,
  ptr 
)    BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__)

Definition at line 720 of file memory.h.

Referenced by dataReset().

◆ BMSfreeBufferMemoryArrayNull

#define BMSfreeBufferMemoryArrayNull (   mem,
  ptr 
)    BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)

Definition at line 721 of file memory.h.

◆ BMSfreeBufferMemorySize

#define BMSfreeBufferMemorySize (   mem,
  ptr 
)    BMSfreeBufferMemory_call((mem), (void**)(ptr), __FILE__, __LINE__);

Definition at line 722 of file memory.h.

◆ BMSfreeBufferMemorySizeNull

#define BMSfreeBufferMemorySizeNull (   mem,
  ptr 
)    BMSfreeBufferMemoryNull_call((mem), (void**)(ptr), __FILE__, __LINE__)

Definition at line 723 of file memory.h.

◆ BMScreateBufferMemory

#define BMScreateBufferMemory (   fac,
  init,
  clean 
)    BMScreateBufferMemory_call((fac), (init), (clean), __FILE__, __LINE__)

Definition at line 725 of file memory.h.

Referenced by SCIPmemCreate().

◆ BMSdestroyBufferMemory

#define BMSdestroyBufferMemory (   mem)    BMSdestroyBufferMemory_call((mem), __FILE__, __LINE__)

Definition at line 726 of file memory.h.

Referenced by SCIPmemFree().

Typedef Documentation

◆ BMS_CHKMEM

typedef struct BMS_ChkMem BMS_CHKMEM

collection of memory chunks of the same element size

Definition at line 291 of file memory.h.

◆ BMS_BLKMEM

typedef struct BMS_BlkMem BMS_BLKMEM

block memory: collection of chunk blocks

Definition at line 426 of file memory.h.

◆ BMS_BUFMEM

typedef struct BMS_BufMem BMS_BUFMEM

buffer memory for temporary objects

Definition at line 699 of file memory.h.

Function Documentation

◆ BMSallocClearMemory_call()

void* BMSallocClearMemory_call ( size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates array and initializes it with 0; returns NULL if memory allocation failed

Parameters
numnumber of memory element to allocate
typesizesize of one memory element to allocate
filenamesource file where the allocation is performed
lineline number in source file where the allocation is performed

Definition at line 327 of file memory.c.

References debugMessage, MAX, MAXMEMSIZE, NULL, printError, and printErrorHeader.

◆ BMSallocMemory_call()

void* BMSallocMemory_call ( size_t  size,
const char *  filename,
int  line 
)

allocates memory; returns NULL if memory allocation failed

Parameters
sizesize of memory element to allocate
filenamesource file where the allocation is performed
lineline number in source file where the allocation is performed

Definition at line 368 of file memory.c.

References debugMessage, MAX, MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSduplicateMemory_call().

◆ BMSallocMemoryArray_call()

void* BMSallocMemoryArray_call ( size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates array; returns NULL if memory allocation failed

Parameters
numnumber of components of array to allocate
typesizesize of each component
filenamesource file where the allocation is performed
lineline number in source file where the allocation is performed

Definition at line 404 of file memory.c.

References debugMessage, MAX, MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSduplicateMemoryArray_call().

◆ BMSreallocMemory_call()

void* BMSreallocMemory_call ( void *  ptr,
size_t  size,
const char *  filename,
int  line 
)

allocates memory; returns NULL if memory allocation failed

Parameters
ptrpointer to memory to reallocate
sizenew size of memory element
filenamesource file where the reallocation is performed
lineline number in source file where the reallocation is performed

Definition at line 444 of file memory.c.

References MAX, MAXMEMSIZE, NULL, printError, and printErrorHeader.

◆ BMSreallocMemoryArray_call()

void* BMSreallocMemoryArray_call ( void *  ptr,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

reallocates array; returns NULL if memory allocation failed

Parameters
ptrpointer to memory to reallocate
numnumber of components of array to allocate
typesizesize of each component
filenamesource file where the reallocation is performed
lineline number in source file where the reallocation is performed

Definition at line 484 of file memory.c.

References MAX, MAXMEMSIZE, NULL, printError, and printErrorHeader.

◆ BMSclearMemory_call()

void BMSclearMemory_call ( void *  ptr,
size_t  size 
)

clears a memory element (i.e. fills it with zeros)

Parameters
ptrpointer to memory element
sizesize of memory element

Definition at line 527 of file memory.c.

References NULL.

◆ BMScopyMemory_call()

void BMScopyMemory_call ( void *  ptr,
const void *  source,
size_t  size 
)

copies the contents of one memory element into another memory element

Parameters
ptrpointer to target memory element
sourcepointer to source memory element
sizesize of memory element to copy

Definition at line 540 of file memory.c.

References NULL.

Referenced by BMSduplicateMemory_call(), and BMSduplicateMemoryArray_call().

◆ BMSmoveMemory_call()

void BMSmoveMemory_call ( void *  ptr,
const void *  source,
size_t  size 
)

moves the contents of one memory element into another memory element, should be used if both elements overlap, otherwise BMScopyMemory is faster

Parameters
ptrpointer to target memory element
sourcepointer to source memory element
sizesize of memory element to copy

Definition at line 557 of file memory.c.

References NULL.

◆ BMSduplicateMemory_call()

void* BMSduplicateMemory_call ( const void *  source,
size_t  size,
const char *  filename,
int  line 
)

allocates memory and copies the contents of the given memory element into the new memory element

Parameters
sourcepointer to source memory element
sizesize of memory element to copy
filenamesource file where the duplication is performed
lineline number in source file where the duplication is performed

Definition at line 572 of file memory.c.

References BMSallocMemory_call(), BMScopyMemory_call(), and NULL.

◆ BMSduplicateMemoryArray_call()

void* BMSduplicateMemoryArray_call ( const void *  source,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates array and copies the contents of the given source array into the new array

Parameters
sourcepointer to source memory element
numnumber of components of array to allocate
typesizesize of each component
filenamesource file where the duplication is performed
lineline number in source file where the duplication is performed

Definition at line 591 of file memory.c.

References BMSallocMemoryArray_call(), BMScopyMemory_call(), and NULL.

◆ BMSfreeMemory_call()

void BMSfreeMemory_call ( void **  ptr,
const char *  filename,
int  line 
)

frees an allocated memory element and sets pointer to NULL

Parameters
ptrpointer to pointer to memory element
filenamesource file where the deallocation is performed
lineline number in source file where the deallocation is performed

Definition at line 611 of file memory.c.

References NULL, printError, and printErrorHeader.

◆ BMSfreeMemoryNull_call()

void BMSfreeMemoryNull_call ( void **  ptr,
const char *  filename,
int  line 
)

frees an allocated memory element if pointer is not NULL and sets pointer to NULL

Parameters
ptrpointer to pointer to memory element
filenamesource file where the deallocation is performed
lineline number in source file where the deallocation is performed

Definition at line 634 of file memory.c.

References NULL.

◆ BMSgetPointerSize_call()

size_t BMSgetPointerSize_call ( const void *  ptr)

returns the size of an allocated memory element

Parameters
ptrpointer to allocated memory

Definition at line 289 of file memory.c.

◆ BMSdisplayMemory_call()

void BMSdisplayMemory_call ( void  )

outputs information about currently allocated memory to the screen

Definition at line 297 of file memory.c.

References printInfo.

◆ BMScheckEmptyMemory_call()

void BMScheckEmptyMemory_call ( void  )

displays a warning message on the screen, if allocated memory exists

Definition at line 307 of file memory.c.

References printInfo.

◆ BMSgetMemoryUsed_call()

long long BMSgetMemoryUsed_call ( void  )

returns total number of allocated bytes

Definition at line 317 of file memory.c.

◆ BMSalignMemsize()

void BMSalignMemsize ( size_t *  size)

aligns the given byte size corresponding to the minimal alignment for chunk and block memory

Parameters
sizepointer to the size to align

Definition at line 761 of file memory.c.

References ALIGNMENT.

◆ BMSisAligned()

int BMSisAligned ( size_t  size)

checks whether the given size meets the alignment conditions for chunk and block memory

Parameters
sizesize to check for alignment

Definition at line 770 of file memory.c.

References ALIGNMENT.

Referenced by createChkmem(), createChunk(), and getHashNumber().

◆ BMScreateChunkMemory_call()

BMS_CHKMEM* BMScreateChunkMemory_call ( size_t  size,
int  initchunksize,
int  garbagefactor,
const char *  filename,
int  line 
)

creates a new chunk block data structure

Parameters
sizeelement size of the chunk block
initchunksizenumber of elements in the first chunk of the chunk block
garbagefactorgarbage collector is called, if at least garbagefactor * avg. chunksize elements are free (-1: disable garbage collection)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1454 of file memory.c.

References createChkmem(), debugMessage, NULL, printError, and printErrorHeader.

◆ BMSclearChunkMemory_call()

void BMSclearChunkMemory_call ( BMS_CHKMEM chkmem,
const char *  filename,
int  line 
)

clears a chunk block data structure

Parameters
chkmemchunk block
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1478 of file memory.c.

References clearChkmem(), debugMessage, NULL, printError, and printErrorHeader.

◆ BMSdestroyChunkMemory_call()

void BMSdestroyChunkMemory_call ( BMS_CHKMEM **  chkmem,
const char *  filename,
int  line 
)

destroys and frees a chunk block data structure

Parameters
chkmempointer to chunk block
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1496 of file memory.c.

References debugMessage, destroyChkmem(), NULL, printError, and printErrorHeader.

◆ BMSallocChunkMemory_call()

void* BMSallocChunkMemory_call ( BMS_CHKMEM chkmem,
size_t  size,
const char *  filename,
int  line 
)

allocates a memory element of the given chunk block

Parameters
chkmemchunk block
sizesize of memory element to allocate (only needed for sanity check)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1516 of file memory.c.

References allocChkmemElement(), checkChkmem, debugMessage, NULL, printError, and printErrorHeader.

Referenced by BMSduplicateChunkMemory_call().

◆ BMSduplicateChunkMemory_call()

void* BMSduplicateChunkMemory_call ( BMS_CHKMEM chkmem,
const void *  source,
size_t  size,
const char *  filename,
int  line 
)

duplicates a given memory element by allocating a new element of the same chunk block and copying the data

Parameters
chkmemchunk block
sourcesource memory element
sizesize of memory element to allocate (only needed for sanity check)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1543 of file memory.c.

References BMSallocChunkMemory_call(), BMScopyMemorySize, and NULL.

◆ BMSfreeChunkMemory_call()

void BMSfreeChunkMemory_call ( BMS_CHKMEM chkmem,
void **  ptr,
size_t  size,
const char *  filename,
int  line 
)

frees a memory element of the given chunk block and sets pointer to NULL

Parameters
chkmemchunk block
ptrpointer to pointer to memory element to free
sizesize of memory element to allocate (only needed for sanity check)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1565 of file memory.c.

References checkChkmem, debugMessage, freeChkmemElement(), NULL, printError, and printErrorHeader.

◆ BMSfreeChunkMemoryNull_call()

void BMSfreeChunkMemoryNull_call ( BMS_CHKMEM chkmem,
void **  ptr,
size_t  size,
const char *  filename,
int  line 
)

frees a memory element of the given chunk block if pointer is not NULL and sets pointer to NULL

Parameters
chkmemchunk block
ptrpointer to pointer to memory element to free
sizesize of memory element to allocate (only needed for sanity check)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1594 of file memory.c.

References checkChkmem, debugMessage, freeChkmemElement(), and NULL.

◆ BMSgarbagecollectChunkMemory_call()

void BMSgarbagecollectChunkMemory_call ( BMS_CHKMEM chkmem)

calls garbage collection of chunk block and frees chunks without allocated memory elements

Parameters
chkmemchunk block

Definition at line 1618 of file memory.c.

References debugMessage, garbagecollectChkmem(), and NULL.

◆ BMSgetChunkMemoryUsed_call()

long long BMSgetChunkMemoryUsed_call ( const BMS_CHKMEM chkmem)

returns the number of allocated bytes in the chunk block

Parameters
chkmemchunk block

Definition at line 1628 of file memory.c.

References checkBlkmem, checkChkmem, CHKHASH_SIZE, and NULL.

◆ BMScreateBlockMemory_call()

BMS_BLKMEM* BMScreateBlockMemory_call ( int  initchunksize,
int  garbagefactor,
const char *  filename,
int  line 
)

creates a block memory allocation data structure

Parameters
initchunksizenumber of elements in the first chunk of each chunk block
garbagefactorgarbage collector is called, if at least garbagefactor * avg. chunksize elements are free (-1: disable garbage collection)
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1726 of file memory.c.

References BMSallocMemory, CHKHASH_SIZE, NULL, printError, and printErrorHeader.

◆ BMSclearBlockMemory_call()

void BMSclearBlockMemory_call ( BMS_BLKMEM blkmem,
const char *  filename,
int  line 
)

frees all chunk blocks in the block memory

Parameters
blkmemblock memory
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1760 of file memory.c.

References CHKHASH_SIZE, destroyChkmem(), NULL, printError, and printErrorHeader.

Referenced by BMSdestroyBlockMemory_call().

◆ BMSdestroyBlockMemory_call()

void BMSdestroyBlockMemory_call ( BMS_BLKMEM **  blkmem,
const char *  filename,
int  line 
)

clears and deletes block memory

Parameters
blkmempointer to block memory
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1794 of file memory.c.

References BMSclearBlockMemory_call(), BMSfreeMemory, INLINE, NULL, printError, and printErrorHeader.

◆ BMSallocBlockMemory_call()

void* BMSallocBlockMemory_call ( BMS_BLKMEM blkmem,
size_t  size,
const char *  filename,
int  line 
)

allocates memory in the block memory pool

Parameters
blkmemblock memory
sizesize of memory element to allocate
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1880 of file memory.c.

References BMSallocBlockMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSduplicateBlockMemory_call(), and BMSreallocBlockMemory_call().

◆ BMSallocBlockMemoryArray_call()

void* BMSallocBlockMemoryArray_call ( BMS_BLKMEM blkmem,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates array in the block memory pool

Parameters
blkmemblock memory
numsize of array to be allocated
typesizesize of each component
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1900 of file memory.c.

References BMSallocBlockMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSallocClearBlockMemoryArray_call(), BMSduplicateBlockMemoryArray_call(), and BMSreallocBlockMemoryArray_call().

◆ BMSallocClearBlockMemoryArray_call()

void* BMSallocClearBlockMemoryArray_call ( BMS_BLKMEM blkmem,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates array in the block memory pool and clears it

Parameters
blkmemblock memory
numsize of array to be allocated
typesizesize of each component
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1921 of file memory.c.

References BMSallocBlockMemoryArray_call(), BMSclearMemorySize, and NULL.

◆ BMSreallocBlockMemory_call()

void* BMSreallocBlockMemory_call ( BMS_BLKMEM blkmem,
void *  ptr,
size_t  oldsize,
size_t  newsize,
const char *  filename,
int  line 
)

resizes memory element in the block memory pool and copies the data

Parameters
blkmemblock memory
ptrmemory element to reallocated
oldsizeold size of memory element
newsizenew size of memory element
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1939 of file memory.c.

References BMSallocBlockMemory_call(), BMScopyMemorySize, BMSfreeBlockMemory_call(), MAXMEMSIZE, MIN, NULL, printError, and printErrorHeader.

◆ BMSreallocBlockMemoryArray_call()

void* BMSreallocBlockMemoryArray_call ( BMS_BLKMEM blkmem,
void *  ptr,
size_t  oldnum,
size_t  newnum,
size_t  typesize,
const char *  filename,
int  line 
)

resizes array in the block memory pool and copies the data

Parameters
blkmemblock memory
ptrmemory element to reallocated
oldnumold size of array
newnumnew size of array
typesizesize of each component
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 1979 of file memory.c.

References BMSallocBlockMemoryArray_call(), BMScopyMemorySize, BMSfreeBlockMemory_call(), MAXMEMSIZE, MIN, NULL, printError, and printErrorHeader.

◆ BMSduplicateBlockMemory_call()

void* BMSduplicateBlockMemory_call ( BMS_BLKMEM blkmem,
const void *  source,
size_t  size,
const char *  filename,
int  line 
)

duplicates memory element in the block memory pool and copies the data

Parameters
blkmemblock memory
sourcememory element to duplicate
sizesize of memory elements
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2018 of file memory.c.

References BMSallocBlockMemory_call(), BMScopyMemorySize, and NULL.

◆ BMSduplicateBlockMemoryArray_call()

void* BMSduplicateBlockMemoryArray_call ( BMS_BLKMEM blkmem,
const void *  source,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

duplicates array in the block memory pool and copies the data

Parameters
blkmemblock memory
sourcememory element to duplicate
numsize of array to be duplicated
typesizesize of each component
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2038 of file memory.c.

References BMSallocBlockMemoryArray_call(), BMScopyMemorySize, INLINE, and NULL.

◆ BMSfreeBlockMemory_call()

void BMSfreeBlockMemory_call ( BMS_BLKMEM blkmem,
void **  ptr,
size_t  size,
const char *  filename,
int  line 
)

frees memory element in the block memory pool and sets pointer to NULL

Parameters
blkmemblock memory
ptrpointer to pointer to memory element to free
sizesize of memory element
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2108 of file memory.c.

References BMSfreeBlockMemory_work(), checkBlkmem, NULL, printError, and printErrorHeader.

Referenced by BMSreallocBlockMemory_call(), and BMSreallocBlockMemoryArray_call().

◆ BMSfreeBlockMemoryNull_call()

void BMSfreeBlockMemoryNull_call ( BMS_BLKMEM blkmem,
void **  ptr,
size_t  size,
const char *  filename,
int  line 
)

frees memory element in the block memory pool if pointer is not NULL and sets pointer to NULL

Parameters
blkmemblock memory
ptrpointer to pointer to memory element to free
sizesize of memory element
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2130 of file memory.c.

References BMSfreeBlockMemory_work(), checkBlkmem, and NULL.

◆ BMSgarbagecollectBlockMemory_call()

void BMSgarbagecollectBlockMemory_call ( BMS_BLKMEM blkmem)

calls garbage collection of block memory, frees chunks without allocated memory elements, and frees chunk blocks without any chunks

Parameters
blkmemblock memory

Definition at line 2151 of file memory.c.

References checkBlkmem, CHKHASH_SIZE, destroyChkmem(), garbagecollectChkmem(), and NULL.

◆ BMSgetBlockMemoryAllocated_call()

long long BMSgetBlockMemoryAllocated_call ( const BMS_BLKMEM blkmem)

returns the number of allocated bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2185 of file memory.c.

References NULL.

◆ BMSgetBlockMemoryUsed_call()

long long BMSgetBlockMemoryUsed_call ( const BMS_BLKMEM blkmem)

returns the number of used bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2195 of file memory.c.

References NULL.

◆ BMSgetBlockMemoryUnused_call()

long long BMSgetBlockMemoryUnused_call ( const BMS_BLKMEM blkmem)

returns the number of allocated but not used bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2205 of file memory.c.

References NULL.

◆ BMSgetBlockMemoryUsedMax_call()

long long BMSgetBlockMemoryUsedMax_call ( const BMS_BLKMEM blkmem)

returns the maximal number of used bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2215 of file memory.c.

References NULL.

◆ BMSgetBlockMemoryUnusedMax_call()

long long BMSgetBlockMemoryUnusedMax_call ( const BMS_BLKMEM blkmem)

returns the maximal number of allocated but not used bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2225 of file memory.c.

References NULL.

◆ BMSgetBlockMemoryAllocatedMax_call()

long long BMSgetBlockMemoryAllocatedMax_call ( const BMS_BLKMEM blkmem)

returns the maximal number of allocated bytes in the block memory

Parameters
blkmemblock memory

Definition at line 2235 of file memory.c.

References NULL.

◆ BMSgetBlockPointerSize_call()

size_t BMSgetBlockPointerSize_call ( const BMS_BLKMEM blkmem,
const void *  ptr 
)

returns the size of the given memory element; returns 0, if the element is not member of the block memory

Parameters
blkmemblock memory
ptrmemory element

Definition at line 2245 of file memory.c.

References findChkmem(), and NULL.

◆ BMSdisplayBlockMemory_call()

void BMSdisplayBlockMemory_call ( const BMS_BLKMEM blkmem)

outputs allocation diagnostics of block memory

Parameters
blkmemblock memory

Definition at line 2265 of file memory.c.

References CHKHASH_SIZE, FOR_EACH_NODE, LONGINT_FORMAT, NULL, and printInfo.

◆ BMScheckEmptyBlockMemory_call()

long long BMScheckEmptyBlockMemory_call ( const BMS_BLKMEM blkmem)

outputs error messages, if there are allocated elements in the block memory and returns number of unfreed bytes

Parameters
blkmemblock memory

Definition at line 2389 of file memory.c.

References CHKHASH_SIZE, errorMessage, FOR_EACH_NODE, LONGINT_FORMAT, and NULL.

◆ BMScreateBufferMemory_call()

BMS_BUFMEM* BMScreateBufferMemory_call ( double  arraygrowfac,
int  arraygrowinit,
unsigned int  clean,
const char *  filename,
int  line 
)

creates memory buffer storage

Parameters
arraygrowfacmemory growing factor for dynamically allocated arrays
arraygrowinitinitial size of dynamically allocated arrays
cleanshould the memory blocks in the buffer be initialized to zero?
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2483 of file memory.c.

References BMS_BufMem::arraygrowfac, BMS_BufMem::arraygrowinit, BMSallocMemory, BMS_BufMem::clean, BMS_BufMem::data, BMS_BufMem::firstfree, BMS_BufMem::ndata, NULL, printError, printErrorHeader, BMS_BufMem::size, BMS_BufMem::totalmem, and BMS_BufMem::used.

◆ BMSdestroyBufferMemory_call()

void BMSdestroyBufferMemory_call ( BMS_BUFMEM **  buffer,
const char *  filename,
int  line 
)

destroys buffer memory

Parameters
bufferpointer to memory buffer storage
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2519 of file memory.c.

References BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, printError, and printErrorHeader.

◆ BMSsetBufferMemoryArraygrowfac()

void BMSsetBufferMemoryArraygrowfac ( BMS_BUFMEM buffer,
double  arraygrowfac 
)

set arraygrowfac

Parameters
bufferpointer to memory buffer storage
arraygrowfacmemory growing factor for dynamically allocated arrays

Definition at line 2552 of file memory.c.

References BMS_BufMem::arraygrowfac, and NULL.

Referenced by SCIP_DECL_PARAMCHGD().

◆ BMSsetBufferMemoryArraygrowinit()

void BMSsetBufferMemoryArraygrowinit ( BMS_BUFMEM buffer,
int  arraygrowinit 
)

set arraygrowinit

Parameters
bufferpointer to memory buffer storage
arraygrowinitinitial size of dynamically allocated arrays

Definition at line 2564 of file memory.c.

References BMS_BufMem::arraygrowinit, and NULL.

Referenced by SCIP_DECL_PARAMCHGD().

◆ BMSallocBufferMemory_call()

void* BMSallocBufferMemory_call ( BMS_BUFMEM buffer,
size_t  size,
const char *  filename,
int  line 
)

allocates the next unused buffer

Parameters
buffermemory buffer storage
sizeminimal required size of the buffer
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2757 of file memory.c.

References BMSallocBufferMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSduplicateBufferMemory_call(), and BMSreallocBufferMemory_work().

◆ BMSallocBufferMemoryArray_call()

void* BMSallocBufferMemoryArray_call ( BMS_BUFMEM buffer,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates the next unused buffer array

Parameters
buffermemory buffer storage
numsize of array to be allocated
typesizesize of components
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2777 of file memory.c.

References BMSallocBufferMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

Referenced by BMSallocClearBufferMemoryArray_call(), and BMSduplicateBufferMemoryArray_call().

◆ BMSallocClearBufferMemoryArray_call()

void* BMSallocClearBufferMemoryArray_call ( BMS_BUFMEM buffer,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates the next unused buffer and clears it

Parameters
buffermemory buffer storage
numsize of array to be allocated
typesizesize of components
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2798 of file memory.c.

References BMSallocBufferMemoryArray_call(), BMSclearMemorySize, INLINE, and NULL.

◆ BMSreallocBufferMemory_call()

void* BMSreallocBufferMemory_call ( BMS_BUFMEM buffer,
void *  ptr,
size_t  size,
const char *  filename,
int  line 
)

reallocates the buffer to at least the given size

Parameters
buffermemory buffer storage
ptrpointer to the allocated memory buffer
sizeminimal required size of the buffer
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2889 of file memory.c.

References BMSreallocBufferMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

◆ BMSreallocBufferMemoryArray_call()

void* BMSreallocBufferMemoryArray_call ( BMS_BUFMEM buffer,
void *  ptr,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

reallocates an array in the buffer to at least the given size

Parameters
buffermemory buffer storage
ptrpointer to the allocated memory buffer
numsize of array to be allocated
typesizesize of components
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2910 of file memory.c.

References BMSreallocBufferMemory_work(), MAXMEMSIZE, NULL, printError, and printErrorHeader.

◆ BMSduplicateBufferMemory_call()

void* BMSduplicateBufferMemory_call ( BMS_BUFMEM buffer,
const void *  source,
size_t  size,
const char *  filename,
int  line 
)

allocates the next unused buffer and copies the given memory into the buffer

Parameters
buffermemory buffer storage
sourcememory block to copy into the buffer
sizeminimal required size of the buffer
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2932 of file memory.c.

References BMSallocBufferMemory_call(), BMScopyMemorySize, and NULL.

◆ BMSduplicateBufferMemoryArray_call()

void* BMSduplicateBufferMemoryArray_call ( BMS_BUFMEM buffer,
const void *  source,
size_t  num,
size_t  typesize,
const char *  filename,
int  line 
)

allocates an array in the next unused buffer and copies the given memory into the buffer

Parameters
buffermemory buffer storage
sourcememory block to copy into the buffer
numsize of array to be allocated
typesizesize of components
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 2955 of file memory.c.

References BMSallocBufferMemoryArray_call(), BMScopyMemorySize, INLINE, and NULL.

◆ BMSfreeBufferMemory_call()

void BMSfreeBufferMemory_call ( BMS_BUFMEM buffer,
void **  ptr,
const char *  filename,
int  line 
)

frees a buffer and sets pointer to NULL

Parameters
buffermemory buffer storage
ptrpointer to pointer to the allocated memory buffer
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 3051 of file memory.c.

References BMSfreeBufferMemory_work(), BMSfreeMemory, NULL, printError, and printErrorHeader.

◆ BMSfreeBufferMemoryNull_call()

void BMSfreeBufferMemoryNull_call ( BMS_BUFMEM buffer,
void **  ptr,
const char *  filename,
int  line 
)

frees a buffer if pointer is not NULL and sets pointer to NULL

Parameters
buffermemory buffer storage
ptrpointer to pointer to the allocated memory buffer
filenamesource file of the function call
lineline number in source file of the function call

Definition at line 3074 of file memory.c.

References BMSfreeBufferMemory_work(), BMSfreeMemory, and NULL.

◆ BMSgetNUsedBufferMemory()

size_t BMSgetNUsedBufferMemory ( BMS_BUFMEM buffer)

gets number of used buffers

Parameters
buffermemory buffer storage

Definition at line 3094 of file memory.c.

References BMS_BufMem::firstfree, and NULL.

Referenced by exitPresolve(), initPresolve(), presolve(), presolveRound(), priceAndCutLoop(), propagationRound(), propAndSolve(), SCIPprimalHeuristics(), SCIPsolveCIP(), separationRoundLP(), and solveNode().

◆ BMSgetBufferMemoryUsed()

long long BMSgetBufferMemoryUsed ( const BMS_BUFMEM buffer)

returns the number of allocated bytes in the buffer memory

Parameters
bufferbuffer memory

Definition at line 3104 of file memory.c.

References BMS_BufMem::ndata, NULL, BMS_BufMem::size, and BMS_BufMem::totalmem.

Referenced by SCIPmemGetTotal(), and SCIPmemGetUsed().

◆ BMSprintBufferMemory()

void BMSprintBufferMemory ( BMS_BUFMEM buffer)

outputs statistics about currently allocated buffers to the screen

Parameters
buffermemory buffer storage

Definition at line 3122 of file memory.c.

References BMS_BufMem::data, BMS_BufMem::ndata, NULL, BMS_BufMem::size, and BMS_BufMem::used.

Referenced by SCIPprintMemoryDiagnostic().