SCIP Doxygen Documentation
Loading...
Searching...
No Matches
datatree.h File Reference

Detailed Description

internal methods for handling data trees

Author
Mohammed Ghannam

Definition in file datatree.h.

#include <stdio.h>
#include "scip/def.h"
#include "blockmemshell/memory.h"
#include "scip/type_retcode.h"
#include "scip/type_set.h"
#include "scip/type_datatree.h"
#include "scip/type_paramset.h"
#include "scip/type_message.h"
#include "scip/type_mem.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPdatatreeCreate (SCIP_DATATREE **datatree, BMS_BLKMEM *blkmem, int capacity)
void SCIPdatatreeFree (SCIP_DATATREE **datatree, BMS_BLKMEM *blkmem)
SCIP_RETCODE SCIPdatatreeInsertBool (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, SCIP_Bool value)
SCIP_RETCODE SCIPdatatreeInsertLong (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, SCIP_Longint value)
SCIP_RETCODE SCIPdatatreeInsertReal (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, SCIP_Real value)
SCIP_RETCODE SCIPdatatreeInsertString (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, const char *value)
SCIP_RETCODE SCIPdatatreeInsertBoolArray (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, const SCIP_Bool *values, int nvalues)
SCIP_RETCODE SCIPdatatreeInsertRealArray (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, const SCIP_Real *values, int nvalues)
SCIP_RETCODE SCIPdatatreeInsertLongArray (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, const SCIP_Longint *values, int nvalues)
SCIP_RETCODE SCIPdatatreeInsertStringArray (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, const char *const *values, int nvalues)
SCIP_RETCODE SCIPdatatreeInsertTree (SCIP_DATATREE *datatree, SCIP_SET *set, BMS_BLKMEM *blkmem, const char *name, SCIP_DATATREE *value)
SCIP_RETCODE SCIPdatatreeWriteJson (SCIP_DATATREE *datatree, SCIP_MESSAGEHDLR *messagehdlr, FILE *file)

Function Documentation

◆ SCIPdatatreeCreate()

SCIP_RETCODE SCIPdatatreeCreate ( SCIP_DATATREE ** datatree,
BMS_BLKMEM * blkmem,
int capacity )

creates a new SCIP_DATATREE with a given capacity for items

Parameters
datatreebuffer to store pointer to created datatree
blkmemblock memory
capacityinitial capacity

Definition at line 112 of file datatree.c.

References assert(), BMSallocBlockMemory, BMSallocBlockMemoryArray, DATATREE_DEFAULT_CAPACITY, NULL, SCIP_ALLOC, and SCIP_OKAY.

Referenced by SCIPcreateDatatree(), SCIPcreateDatatreeInTree(), and SCIPtableOutput().

◆ SCIPdatatreeFree()

◆ SCIPdatatreeInsertBool()

SCIP_RETCODE SCIPdatatreeInsertBool ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
SCIP_Bool value )

inserts a SCIP_Bool value into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuevalue of entry

Definition at line 192 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_bool, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_ALLOC, SCIP_Bool, SCIP_CALL, SCIP_DATATREE_BOOL, SCIP_OKAY, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeBool().

◆ SCIPdatatreeInsertLong()

SCIP_RETCODE SCIPdatatreeInsertLong ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
SCIP_Longint value )

◆ SCIPdatatreeInsertReal()

SCIP_RETCODE SCIPdatatreeInsertReal ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
SCIP_Real value )

inserts a SCIP_Real value into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuevalue of entry

Definition at line 254 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_real, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_DATATREE_REAL, SCIP_OKAY, SCIP_Real, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeReal(), and SCIPprobCollectStatistics().

◆ SCIPdatatreeInsertString()

SCIP_RETCODE SCIPdatatreeInsertString ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
const char * value )

◆ SCIPdatatreeInsertBoolArray()

SCIP_RETCODE SCIPdatatreeInsertBoolArray ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
const SCIP_Bool * values,
int nvalues )

inserts a SCIP_Bool array into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuesvalues of entry
nvaluesnumber of values

Definition at line 316 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_boolarray, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_DATATREEVALUE::nvalues, SCIP_ALLOC, SCIP_Bool, SCIP_CALL, SCIP_DATATREE_BOOLARRAY, SCIP_OKAY, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeBoolArray().

◆ SCIPdatatreeInsertRealArray()

SCIP_RETCODE SCIPdatatreeInsertRealArray ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
const SCIP_Real * values,
int nvalues )

inserts a SCIP_Real array into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuesvalues of entry
nvaluesnumber of values

Definition at line 386 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_realarray, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_DATATREEVALUE::nvalues, SCIP_ALLOC, SCIP_CALL, SCIP_DATATREE_REALARRAY, SCIP_OKAY, SCIP_Real, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeRealArray().

◆ SCIPdatatreeInsertLongArray()

SCIP_RETCODE SCIPdatatreeInsertLongArray ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
const SCIP_Longint * values,
int nvalues )

inserts a SCIP_Longint array into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuesvalues of entry
nvaluesnumber of values

Definition at line 351 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_longarray, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_DATATREEVALUE::nvalues, SCIP_ALLOC, SCIP_CALL, SCIP_DATATREE_LONGARRAY, SCIP_Longint, SCIP_OKAY, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeIntArray(), and SCIPinsertDatatreeLongArray().

◆ SCIPdatatreeInsertStringArray()

SCIP_RETCODE SCIPdatatreeInsertStringArray ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
const char *const * values,
int nvalues )

◆ SCIPdatatreeInsertTree()

SCIP_RETCODE SCIPdatatreeInsertTree ( SCIP_DATATREE * datatree,
SCIP_SET * set,
BMS_BLKMEM * blkmem,
const char * name,
SCIP_DATATREE * value )

inserts a store value into a SCIP_DATATREE object

inserts a datatree value into a SCIP_DATATREE object

Parameters
datatreedata tree
setglobal SCIP settings
blkmemblock memory
namename of entry
valuevalue of entry

Definition at line 461 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_dtree, assert(), BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_ALLOC, SCIP_CALL, SCIP_DATATREE_DATATREE, SCIP_OKAY, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPcreateDatatreeInTree(), and SCIPinsertDatatreeTree().

◆ SCIPdatatreeWriteJson()