type_var.h
Go to the documentation of this file.
21 * This file defines the interface for user variable data implemented in C. Each variable can be equipped with a
22 * variable data struct. This data can be accessed via the function SCIPgetVardata() at any time after it is created
28 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
44 SCIP_VARSTATUS_AGGREGATED = 4, /**< variable is aggregated to x = a*y + c in the transformed problem */
46 SCIP_VARSTATUS_NEGATED = 6 /**< variable is the negation of an original or transformed variable */
55 SCIP_VARTYPE_IMPLINT = 2, /**< implicit integer variable: Integrality of this variable is implied for every optimal
75 SCIP_BOUNDCHGTYPE_CONSINFER = 1, /**< bound change was due to an inference of a constraint (domain propagation) */
76 SCIP_BOUNDCHGTYPE_PROPINFER = 2 /**< bound change was due to an inference of a domain propagator */
89 typedef struct SCIP_DomChgBound SCIP_DOMCHGBOUND; /**< static domain change data for bound changes */
90 typedef struct SCIP_DomChgBoth SCIP_DOMCHGBOTH; /**< static domain change data for bound and hole changes */
91 typedef struct SCIP_DomChgDyn SCIP_DOMCHGDYN; /**< dynamic domain change data for bound and hole changes */
94 typedef struct SCIP_BdChgIdx SCIP_BDCHGIDX; /**< bound change index in path from root to current node */
95 typedef struct SCIP_BdChgInfo SCIP_BDCHGINFO; /**< bound change information to track bound changes from root to current node */
96 typedef struct SCIP_BranchingData SCIP_BRANCHINGDATA; /**< data for branching decision bound changes */
100 typedef struct SCIP_Holelist SCIP_HOLELIST; /**< list of holes in a domain of an integer variable */
118 #define SCIP_DECL_VARDELORIG(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* var, SCIP_VARDATA** vardata)
138 #define SCIP_DECL_VARTRANS(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* sourcevar, SCIP_VARDATA* sourcedata, SCIP_VAR* targetvar, SCIP_VARDATA** targetdata)
151 #define SCIP_DECL_VARDELTRANS(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* var, SCIP_VARDATA** vardata)
155 * This method should copy the variable data of the source SCIP and create a target variable data for target
156 * variable. This callback is optimal. If the copying process was successful the target variable gets this variable
157 * data assigned. In case the result pointer is set to SCIP_DIDNOTRUN the target variable will have no variable data at
160 * The variable map and the constraint map can be used via the function SCIPgetVarCopy() and SCIPgetConsCopy(),
161 * respectively, to get for certain variables and constraints of the source SCIP the counter parts in the target
162 * SCIP. You should be very carefully in using these two methods since they could lead to infinity loop.
169 * - varmap, : a hashmap which stores the mapping of source variables to corresponding target variables
170 * - consmap, : a hashmap which stores the mapping of source constraints to corresponding target constraints
181 #define SCIP_DECL_VARCOPY(x) SCIP_RETCODE x (SCIP* scip, SCIP* sourcescip, SCIP_VAR* sourcevar, SCIP_VARDATA* sourcedata, \
182 SCIP_HASHMAP* varmap, SCIP_HASHMAP* consmap, SCIP_VAR* targetvar, SCIP_VARDATA** targetdata, SCIP_RESULT* result)
Definition: type_var.h:67
Definition: struct_var.h:99
Definition: type_var.h:40
Definition: struct_var.h:151
Definition: struct_var.h:198
Definition: struct_var.h:82
Definition: type_var.h:53
Definition: type_var.h:66
Definition: struct_var.h:121
Definition: struct_var.h:174
Definition: struct_var.h:159
Definition: type_var.h:75
Definition: struct_var.h:129
Definition: type_var.h:42
Definition: type_var.h:44
Definition: type_var.h:76
Definition: struct_var.h:106
Definition: struct_var.h:56
Definition: type_var.h:55
Definition: struct_var.h:49
Definition: type_var.h:65
Definition: type_var.h:54
Definition: type_var.h:46
Definition: type_var.h:85
Definition: type_var.h:41
Definition: type_var.h:45
Definition: struct_var.h:192
Definition: struct_var.h:42
Definition: type_var.h:84
Definition: struct_var.h:182
Definition: struct_var.h:167
Definition: struct_var.h:139
Definition: type_var.h:43
Definition: type_var.h:74
Definition: type_var.h:58