Scippy

SCIP

Solving Constraint Integer Programs

boundstore.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2021 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not visit scipopt.org. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file boundstore.h
17  * @ingroup PARALLEL
18  * @brief the interface of the boundstore structure
19  * @author Leona Gottwald
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #include "scip/def.h"
25 #include "scip/type_syncstore.h"
26 #include "scip/type_scip.h"
27 #include "scip/type_lp.h"
28 #include "scip/type_retcode.h"
29 
30 #ifndef __SCIP_BOUNDSTORE_H__
31 #define __SCIP_BOUNDSTORE_H__
32 
33 /** create bound store data structure */
36  SCIP* scip, /**< scip main datastructure */
37  SCIP_BOUNDSTORE** boundstore, /**< pointer to store the bound store datastructure */
38  int nvars /**< number of variables for which bounds may be stored */
39  );
40 
41 /** free bound store data structure */
44  SCIP* scip, /**< scip main datastructure */
45  SCIP_BOUNDSTORE** boundstore /**< pointer to the bound store datastructure */
46  );
47 
48 /** add bound change to bound store data structure */
51  SCIP* scip, /**< scip main datastructure */
52  SCIP_BOUNDSTORE* boundstore, /**< the bound store datastructure */
53  int varidx, /**< variable index of bound change, must be smaller than the
54  * number of variables given during creation of bound store */
55  SCIP_Real newbound, /**< bound value of variable */
56  SCIP_BOUNDTYPE boundtype /**< type of new bound */
57  );
58 
59 /** add all bound changes of source to target */
62  SCIP* scip, /**< scip main datastructure for target boundstore */
63  SCIP_BOUNDSTORE* target, /**< the bound store datastructure where the bounds get merged in */
64  SCIP_BOUNDSTORE* source /**< the bound store datastructure from which the bounds get merged in */
65  );
66 
67 /** remove all boundchanges from bound store */
70  SCIP_BOUNDSTORE* boundstore /**< the bound store datastructure */
71  );
72 
73 /** gets variable index of the i'th stored boundchange */
76  SCIP_BOUNDSTORE* boundstore, /**< the bound store datastructure */
77  int i /**< the index of the bound change */
78  );
79 
80 /** gets the type of the i'th stored boundchange */
83  SCIP_BOUNDSTORE* boundstore, /**< the bound store datastructure */
84  int i /**< the index of the bound change */
85  );
86 
87 /** gets the bound value of the i'th stored boundchange */
90  SCIP_BOUNDSTORE* boundstore, /**< the bound store datastructure */
91  int i /**< the index of the bound change */
92  );
93 
94 /** gets the number of stored bound changes */
97  SCIP_BOUNDSTORE* boundstore /**< the bound store datastructure */
98  );
99 
100 #endif
enum SCIP_BoundType SCIP_BOUNDTYPE
Definition: type_lp.h:50
SCIP_EXPORT int SCIPboundstoreGetNChgs(SCIP_BOUNDSTORE *boundstore)
Definition: boundstore.c:188
#define SCIP_EXPORT
Definition: def.h:100
SCIP_EXPORT SCIP_Real SCIPboundstoreGetChgVal(SCIP_BOUNDSTORE *boundstore, int i)
Definition: boundstore.c:176
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:54
type definitions for return codes for SCIP methods
type definitions for LP management
SCIP_EXPORT SCIP_RETCODE SCIPboundstoreCreate(SCIP *scip, SCIP_BOUNDSTORE **boundstore, int nvars)
Definition: boundstore.c:30
type definitions for SCIP&#39;s main datastructure
SCIP_EXPORT void SCIPboundstoreClear(SCIP_BOUNDSTORE *boundstore)
Definition: boundstore.c:137
SCIP_EXPORT SCIP_RETCODE SCIPboundstoreMerge(SCIP *scip, SCIP_BOUNDSTORE *target, SCIP_BOUNDSTORE *source)
Definition: boundstore.c:115
SCIP_EXPORT int SCIPboundstoreGetChgVaridx(SCIP_BOUNDSTORE *boundstore, int i)
Definition: boundstore.c:152
SCIP_EXPORT void SCIPboundstoreFree(SCIP *scip, SCIP_BOUNDSTORE **boundstore)
Definition: boundstore.c:51
the type definitions for the synchronization store
SCIP_EXPORT SCIP_RETCODE SCIPboundstoreAdd(SCIP *scip, SCIP_BOUNDSTORE *boundstore, int varidx, SCIP_Real newbound, SCIP_BOUNDTYPE boundtype)
Definition: boundstore.c:66
SCIP_EXPORT SCIP_BOUNDTYPE SCIPboundstoreGetChgType(SCIP_BOUNDSTORE *boundstore, int i)
Definition: boundstore.c:164
#define SCIP_Real
Definition: def.h:163
common defines and data types used in all packages of SCIP