Scippy

SCIP

Solving Constraint Integer Programs

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 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, BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_ALLOC, 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 
)

inserts a long value into a SCIP_DATATREE object

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

Definition at line 223 of file datatree.c.

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

Referenced by SCIPinsertDatatreeInt(), SCIPinsertDatatreeLong(), and SCIPprobCollectStatistics().

◆ 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, 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_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 
)

inserts a string value into a SCIP_DATATREE object

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

Definition at line 285 of file datatree.c.

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

Referenced by SCIPinsertDatatreeString(), and SCIPprobCollectStatistics().

◆ 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, BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_DATATREEVALUE::nvalues, SCIP_ALLOC, 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, 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_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, 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_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 
)

inserts a string 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 421 of file datatree.c.

References SCIP_DATATREEVALUEUNION::as_stringarray, BMSallocBlockMemoryArray, BMSduplicateBlockMemoryArray, SCIP_DATATREEVALUE::data, datatreeExpand(), SCIP_Datatree::items, SCIP_DATATREEITEM::name, SCIP_Datatree::nitems, NULL, SCIP_DATATREEVALUE::nvalues, SCIP_ALLOC, SCIP_CALL, SCIP_DATATREE_STRINGARRAY, SCIP_OKAY, SCIP_DATATREEVALUE::type, and SCIP_DATATREEITEM::value.

Referenced by SCIPinsertDatatreeStringArray().

◆ 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, 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()