Scippy

SCIP

Solving Constraint Integer Programs

pub_presol.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-2014 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 email to scip@zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file pub_presol.h
17  * @ingroup PUBLICMETHODS
18  * @brief public methods for presolvers
19  * @author Tobias Achterberg
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #ifndef __SCIP_PUB_PRESOL_H__
25 #define __SCIP_PUB_PRESOL_H__
26 
27 
28 #include "scip/def.h"
29 #include "scip/type_misc.h"
30 #include "scip/type_presol.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /** compares two presolvers w. r. to their priority */
37 extern
38 SCIP_DECL_SORTPTRCOMP(SCIPpresolComp);
39 
40 /** comparison method for sorting presolvers w.r.t. to their name */
41 extern
42 SCIP_DECL_SORTPTRCOMP(SCIPpresolCompName);
43 
44 /** gets user data of presolver */
45 extern
47  SCIP_PRESOL* presol /**< presolver */
48  );
49 
50 /** sets user data of presolver; user has to free old data in advance! */
51 extern
53  SCIP_PRESOL* presol, /**< presolver */
54  SCIP_PRESOLDATA* presoldata /**< new presolver user data */
55  );
56 
57 /** gets name of presolver */
58 extern
59 const char* SCIPpresolGetName(
60  SCIP_PRESOL* presol /**< presolver */
61  );
62 
63 /** gets description of presolver */
64 extern
65 const char* SCIPpresolGetDesc(
66  SCIP_PRESOL* presol /**< presolver */
67  );
68 
69 /** gets priority of presolver */
70 extern
72  SCIP_PRESOL* presol /**< presolver */
73  );
74 
75 /** should presolver be delayed, if other presolvers found reductions? */
76 extern
78  SCIP_PRESOL* presol /**< presolver */
79  );
80 
81 /** was presolver delayed at the last call? */
82 extern
84  SCIP_PRESOL* presol /**< presolver */
85  );
86 
87 /** is presolver initialized? */
88 extern
90  SCIP_PRESOL* presol /**< presolver */
91  );
92 
93 /** gets time in seconds used in this presolver for setting up for next stages */
94 extern
96  SCIP_PRESOL* presol /**< presolver */
97  );
98 
99 /** gets time in seconds used in this presolver */
100 extern
102  SCIP_PRESOL* presol /**< presolver */
103  );
104 
105 /** gets number of variables fixed in presolver */
106 extern
108  SCIP_PRESOL* presol /**< presolver */
109  );
110 
111 /** gets number of variables aggregated in presolver */
112 extern
114  SCIP_PRESOL* presol /**< presolver */
115  );
116 
117 /** gets number of variable types changed in presolver */
118 extern
120  SCIP_PRESOL* presol /**< presolver */
121  );
122 
123 /** gets number of bounds changed in presolver */
124 extern
126  SCIP_PRESOL* presol /**< presolver */
127  );
128 
129 /** gets number of holes added to domains of variables in presolver */
130 extern
132  SCIP_PRESOL* presol /**< presolver */
133  );
134 
135 /** gets number of constraints deleted in presolver */
136 extern
138  SCIP_PRESOL* presol /**< presolver */
139  );
140 
141 /** gets number of constraints added in presolver */
142 extern
144  SCIP_PRESOL* presol /**< presolver */
145  );
146 
147 /** gets number of constraints upgraded in presolver */
148 extern
150  SCIP_PRESOL* presol /**< presolver */
151  );
152 
153 /** gets number of coefficients changed in presolver */
154 extern
156  SCIP_PRESOL* presol /**< presolver */
157  );
158 
159 /** gets number of constraint sides changed in presolver */
160 extern
162  SCIP_PRESOL* presol /**< presolver */
163  );
164 
165 /** gets number of times the presolver was called and tried to find reductions */
166 extern
168  SCIP_PRESOL* presol /**< presolver */
169  );
170 
171 #ifdef __cplusplus
172 }
173 #endif
174 
175 #endif
struct SCIP_PresolData SCIP_PRESOLDATA
Definition: type_presol.h:37
type definitions for miscellaneous datastructures
int SCIPpresolGetNAddConss(SCIP_PRESOL *presol)
void SCIPpresolSetData(SCIP_PRESOL *presol, SCIP_PRESOLDATA *presoldata)
SCIP_Real SCIPpresolGetTime(SCIP_PRESOL *presol)
const char * SCIPpresolGetDesc(SCIP_PRESOL *presol)
type definitions for presolvers
int SCIPpresolGetNChgBds(SCIP_PRESOL *presol)
int SCIPpresolGetNAggrVars(SCIP_PRESOL *presol)
SCIP_Bool SCIPpresolIsInitialized(SCIP_PRESOL *presol)
SCIP_Bool SCIPpresolIsDelayed(SCIP_PRESOL *presol)
int SCIPpresolGetNFixedVars(SCIP_PRESOL *presol)
SCIP_Bool SCIPpresolWasDelayed(SCIP_PRESOL *presol)
int SCIPpresolGetNChgVarTypes(SCIP_PRESOL *presol)
int SCIPpresolGetNUpgdConss(SCIP_PRESOL *presol)
int SCIPpresolGetNChgSides(SCIP_PRESOL *presol)
int SCIPpresolGetNChgCoefs(SCIP_PRESOL *presol)
#define SCIP_Bool
Definition: def.h:49
SCIP_PRESOLDATA * SCIPpresolGetData(SCIP_PRESOL *presol)
int SCIPpresolGetNAddHoles(SCIP_PRESOL *presol)
SCIP_Real SCIPpresolGetSetupTime(SCIP_PRESOL *presol)
int SCIPpresolGetNDelConss(SCIP_PRESOL *presol)
SCIP_DECL_SORTPTRCOMP(SCIPpresolComp)
#define SCIP_Real
Definition: def.h:123
struct SCIP_Presol SCIP_PRESOL
Definition: type_presol.h:36
common defines and data types used in all packages of SCIP
int SCIPpresolGetNCalls(SCIP_PRESOL *presol)
int SCIPpresolGetPriority(SCIP_PRESOL *presol)
const char * SCIPpresolGetName(SCIP_PRESOL *presol)