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: continuous variable, that is always integral */ 73 SCIP_BOUNDCHGTYPE_CONSINFER = 1, /**< bound change was due to an inference of a constraint (domain propagation) */ 74 SCIP_BOUNDCHGTYPE_PROPINFER = 2 /**< bound change was due to an inference of a domain propagator */ 78 typedef struct SCIP_DomChgBound SCIP_DOMCHGBOUND; /**< static domain change data for bound changes */ 79 typedef struct SCIP_DomChgBoth SCIP_DOMCHGBOTH; /**< static domain change data for bound and hole changes */ 80 typedef struct SCIP_DomChgDyn SCIP_DOMCHGDYN; /**< dynamic domain change data for bound and hole changes */ 83 typedef struct SCIP_BdChgIdx SCIP_BDCHGIDX; /**< bound change index in path from root to current node */ 84 typedef struct SCIP_BdChgInfo SCIP_BDCHGINFO; /**< bound change information to track bound changes from root to current node */ 85 typedef struct SCIP_BranchingData SCIP_BRANCHINGDATA; /**< data for branching decision bound changes */ 89 typedef struct SCIP_Holelist SCIP_HOLELIST; /**< list of holes in a domain of an integer variable */ 107 #define SCIP_DECL_VARDELORIG(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* var, SCIP_VARDATA** vardata) 127 #define SCIP_DECL_VARTRANS(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* sourcevar, SCIP_VARDATA* sourcedata, SCIP_VAR* targetvar, SCIP_VARDATA** targetdata) 140 #define SCIP_DECL_VARDELTRANS(x) SCIP_RETCODE x (SCIP* scip, SCIP_VAR* var, SCIP_VARDATA** vardata) 144 * This method should copy the variable data of the source SCIP and create a target variable data for target 145 * variable. This callback is optimal. If the copying process was successful the target variable gets this variable 146 * data assigned. In case the result pointer is set to SCIP_DIDNOTRUN the target variable will have no variable data at 149 * The variable map and the constraint map can be used via the function SCIPgetVarCopy() and SCIPgetConsCopy(), 150 * respectively, to get for certain variables and constraints of the source SCIP the counter parts in the target 151 * SCIP. You should be very carefully in using these two methods since they could lead to infinity loop. 158 * - varmap, : a hashmap which stores the mapping of source variables to corresponding target variables 159 * - consmap, : a hashmap which stores the mapping of source constraints to corresponding target constraints 170 #define SCIP_DECL_VARCOPY(x) SCIP_RETCODE x (SCIP* scip, SCIP* sourcescip, SCIP_VAR* sourcevar, SCIP_VARDATA* sourcedata, \ 171 SCIP_HASHMAP* varmap, SCIP_HASHMAP* consmap, SCIP_VAR* targetvar, SCIP_VARDATA** targetdata, SCIP_RESULT* result) Definition: type_var.h:65 Definition: type_var.h:40 Definition: type_var.h:53 Definition: type_var.h:64 Definition: type_var.h:73 Definition: type_var.h:42 Definition: type_var.h:44 Definition: type_var.h:74 Definition: type_var.h:55 Definition: type_var.h:63 Definition: type_var.h:54 Definition: type_var.h:46 Definition: type_var.h:41 Definition: type_var.h:45 Definition: type_var.h:43 Definition: type_var.h:72 Definition: type_var.h:56 |