Scippy

SCIP

Solving Constraint Integer Programs

pub_prop.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-2015 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_prop.h
17  * @ingroup PUBLICMETHODS
18  * @brief public methods for propagators
19  * @author Tobias Achterberg
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #ifndef __SCIP_PUB_PROP_H__
25 #define __SCIP_PUB_PROP_H__
26 
27 
28 #include "scip/def.h"
29 #include "scip/type_misc.h"
30 #include "scip/type_prop.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /** compares two propagators w. r. to their priority */
37 extern
38 SCIP_DECL_SORTPTRCOMP(SCIPpropComp);
39 
40 /** compares two propagators w. r. to their presolving priority */
41 extern
42 SCIP_DECL_SORTPTRCOMP(SCIPpropCompPresol);
43 
44 /** comparison method for sorting propagators w.r.t. to their name */
45 extern
46 SCIP_DECL_SORTPTRCOMP(SCIPpropCompName);
47 
48 /** gets user data of propagator */
49 extern
51  SCIP_PROP* prop /**< propagator */
52  );
53 
54 /** sets user data of propagator; user has to free old data in advance! */
55 extern
56 void SCIPpropSetData(
57  SCIP_PROP* prop, /**< propagator */
58  SCIP_PROPDATA* propdata /**< new propagator user data */
59  );
60 
61 /** gets name of propagator */
62 extern
63 const char* SCIPpropGetName(
64  SCIP_PROP* prop /**< propagator */
65  );
66 
67 /** gets description of propagator */
68 extern
69 const char* SCIPpropGetDesc(
70  SCIP_PROP* prop /**< propagator */
71  );
72 
73 /** gets priority of propagator */
74 extern
76  SCIP_PROP* prop /**< propagator */
77  );
78 
79 /** gets presolving priority of propagator */
80 extern
82  SCIP_PROP* prop /**< propagator */
83  );
84 
85 /** gets frequency of propagator */
86 extern
87 int SCIPpropGetFreq(
88  SCIP_PROP* prop /**< propagator */
89  );
90 
91 /** gets time in seconds used for setting up this propagator for new stages */
92 extern
94  SCIP_PROP* prop /**< propagator */
95  );
96 
97 /** sets frequency of propagator */
98 extern
99 void SCIPpropSetFreq(
100  SCIP_PROP* prop, /**< propagator */
101  int freq /**< new frequency of propagator */
102  );
103 
104 /** gets time in seconds used in this propagator */
105 extern
107  SCIP_PROP* prop /**< propagator */
108  );
109 
110 /** gets time in seconds used in this propagator during strong branching */
111 extern
113  SCIP_PROP* prop /**< propagator */
114  );
115 
116 /** gets time in seconds used in this propagator for resolve propagation */
117 extern
119  SCIP_PROP* prop /**< propagator */
120  );
121 
122 /** gets time in seconds used in this propagator for presolving */
123 extern
125  SCIP_PROP* prop /**< propagator */
126  );
127 
128 /** gets the total number of times, the propagator was called */
129 extern
131  SCIP_PROP* prop /**< propagator */
132  );
133 
134 /** gets the total number of times, the propagator was called for resolving a propagation */
135 extern
137  SCIP_PROP* prop /**< propagator */
138  );
139 
140 /** gets total number of times, this propagator detected a cutoff */
141 extern
143  SCIP_PROP* prop /**< propagator */
144  );
145 
146 /** gets total number of domain reductions found by this propagator */
147 extern
149  SCIP_PROP* prop /**< propagator */
150  );
151 
152 /** should propagator be delayed, if other propagators found reductions? */
153 extern
155  SCIP_PROP* prop /**< propagator */
156  );
157 
158 /** should propagator be delayed during presolving, if other propagators found reductions? */
159 extern
161  SCIP_PROP* prop /**< propagator */
162  );
163 
164 /** was propagator delayed at the last call? */
165 extern
167  SCIP_PROP* prop /**< propagator */
168  );
169 
170 /** was presolving of propagator delayed at the last call? */
171 extern
173  SCIP_PROP* prop /**< propagator */
174  );
175 
176 /** is propagator initialized? */
177 extern
179  SCIP_PROP* prop /**< propagator */
180  );
181 
182 /** gets number of variables fixed during presolving of propagator */
183 extern
185  SCIP_PROP* prop /**< propagator */
186  );
187 
188 /** gets number of variables aggregated during presolving of propagator */
189 extern
191  SCIP_PROP* prop /**< propagator */
192  );
193 
194 /** gets number of variable types changed during presolving of propagator */
195 extern
197  SCIP_PROP* prop /**< propagator */
198  );
199 
200 /** gets number of bounds changed during presolving of propagator */
201 extern
203  SCIP_PROP* prop /**< propagator */
204  );
205 
206 /** gets number of holes added to domains of variables during presolving of propagator */
207 extern
209  SCIP_PROP* prop /**< propagator */
210  );
211 
212 /** gets number of constraints deleted during presolving of propagator */
213 extern
215  SCIP_PROP* prop /**< propagator */
216  );
217 
218 /** gets number of constraints added during presolving of propagator */
219 extern
221  SCIP_PROP* prop /**< propagator */
222  );
223 
224 /** gets number of constraints upgraded during presolving of propagator */
225 extern
227  SCIP_PROP* prop /**< propagator */
228  );
229 
230 /** gets number of coefficients changed during presolving of propagator */
231 extern
233  SCIP_PROP* prop /**< propagator */
234  );
235 
236 /** gets number of constraint sides changed during presolving of propagator */
237 extern
239  SCIP_PROP* prop /**< propagator */
240  );
241 
242 /** gets number of times the propagator was called in presolving and tried to find reductions */
243 extern
245  SCIP_PROP* prop /**< propagator */
246  );
247 
248 /** returns the timing mask of the propagator */
249 extern
251  SCIP_PROP* prop /**< propagator */
252  );
253 
254 /** does the propagator perform presolving? */
255 extern
257  SCIP_PROP* prop /**< propagator */
258  );
259 
260 /** returns the timing mask of the presolving method of the propagator */
261 extern
263  SCIP_PROP* prop /**< propagator */
264  );
265 
266 /** sets the timing mask of the presolving method of the propagator */
267 extern
269  SCIP_PROP* prop, /**< propagator */
270  SCIP_PRESOLTIMING presoltiming /** timing mask to be set */
271  );
272 
273 #ifdef __cplusplus
274 }
275 #endif
276 
277 #endif
const char * SCIPpropGetName(SCIP_PROP *prop)
SCIP_Real SCIPpropGetSetupTime(SCIP_PROP *prop)
SCIP_DECL_SORTPTRCOMP(SCIPpropComp)
int SCIPpropGetNPresolCalls(SCIP_PROP *prop)
type definitions for miscellaneous datastructures
SCIP_Real SCIPpropGetRespropTime(SCIP_PROP *prop)
int SCIPpropGetNFixedVars(SCIP_PROP *prop)
SCIP_Bool SCIPpropIsInitialized(SCIP_PROP *prop)
int SCIPpropGetNUpgdConss(SCIP_PROP *prop)
SCIP_Bool SCIPpropIsDelayed(SCIP_PROP *prop)
SCIP_Longint SCIPpropGetNRespropCalls(SCIP_PROP *prop)
int SCIPpropGetNDelConss(SCIP_PROP *prop)
int SCIPpropGetPresolPriority(SCIP_PROP *prop)
SCIP_Longint SCIPpropGetNDomredsFound(SCIP_PROP *prop)
SCIP_Bool SCIPpropDoesPresolve(SCIP_PROP *prop)
void SCIPpropSetFreq(SCIP_PROP *prop, int freq)
SCIP_Longint SCIPpropGetNCutoffs(SCIP_PROP *prop)
SCIP_Real SCIPpropGetTime(SCIP_PROP *prop)
void SCIPpropSetData(SCIP_PROP *prop, SCIP_PROPDATA *propdata)
struct SCIP_Prop SCIP_PROP
Definition: type_prop.h:37
SCIP_Longint SCIPpropGetNCalls(SCIP_PROP *prop)
int SCIPpropGetNChgVarTypes(SCIP_PROP *prop)
const char * SCIPpropGetDesc(SCIP_PROP *prop)
SCIP_Bool SCIPpropWasPresolDelayed(SCIP_PROP *prop)
SCIP_Real SCIPpropGetStrongBranchPropTime(SCIP_PROP *prop)
int SCIPpropGetNAddHoles(SCIP_PROP *prop)
int SCIPpropGetNChgCoefs(SCIP_PROP *prop)
unsigned int SCIP_PRESOLTIMING
Definition: type_timing.h:50
SCIP_Bool SCIPpropIsPresolDelayed(SCIP_PROP *prop)
SCIP_Real SCIPpropGetPresolTime(SCIP_PROP *prop)
int SCIPpropGetNAddConss(SCIP_PROP *prop)
SCIP_PROPTIMING SCIPpropGetTimingmask(SCIP_PROP *prop)
SCIP_PROPDATA * SCIPpropGetData(SCIP_PROP *prop)
#define SCIP_Bool
Definition: def.h:50
int SCIPpropGetNChgBds(SCIP_PROP *prop)
void SCIPpropSetPresolTiming(SCIP_PROP *prop, SCIP_PRESOLTIMING presoltiming)
int SCIPpropGetNAggrVars(SCIP_PROP *prop)
type definitions for propagators
unsigned int SCIP_PROPTIMING
Definition: type_timing.h:64
SCIP_PRESOLTIMING SCIPpropGetPresolTiming(SCIP_PROP *prop)
int SCIPpropGetPriority(SCIP_PROP *prop)
int SCIPpropGetFreq(SCIP_PROP *prop)
#define SCIP_Real
Definition: def.h:124
struct SCIP_PropData SCIP_PROPDATA
Definition: type_prop.h:38
#define SCIP_Longint
Definition: def.h:109
common defines and data types used in all packages of SCIP
SCIP_Bool SCIPpropWasDelayed(SCIP_PROP *prop)
int SCIPpropGetNChgSides(SCIP_PROP *prop)