Scippy

SCIP

Solving Constraint Integer Programs

pub_cutsel.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-2024 Zuse Institute Berlin (ZIB) */
7 /* */
8 /* Licensed under the Apache License, Version 2.0 (the "License"); */
9 /* you may not use this file except in compliance with the License. */
10 /* You may obtain a copy of the License at */
11 /* */
12 /* http://www.apache.org/licenses/LICENSE-2.0 */
13 /* */
14 /* Unless required by applicable law or agreed to in writing, software */
15 /* distributed under the License is distributed on an "AS IS" BASIS, */
16 /* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
17 /* See the License for the specific language governing permissions and */
18 /* limitations under the License. */
19 /* */
20 /* You should have received a copy of the Apache-2.0 license */
21 /* along with SCIP; see the file LICENSE. If not visit scipopt.org. */
22 /* */
23 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
24 
25 /**@file pub_cutsel.h
26  * @ingroup PUBLICCOREAPI
27  * @brief public methods for cut selectors
28  * @author Mark Turner
29  * @author Felipe Serrano
30  */
31 
32 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
33 
34 #ifndef __SCIP_PUB_CUTSEL_H__
35 #define __SCIP_PUB_CUTSEL_H__
36 
37 
38 #include "scip/def.h"
39 #include "scip/type_misc.h"
40 #include "scip/type_cutsel.h"
41 
42 #ifdef __cplusplus
43 extern "C" {
44 #endif
45 
46 /**@addtogroup PublicCutSelectorMethods
47  *
48  * @{
49  */
50 
51 /** gets name of cut selector */
52 SCIP_EXPORT
53 const char* SCIPcutselGetName(
54  SCIP_CUTSEL* cutsel /**< cut selector */
55  );
56 
57 /** gets user data of cut selector */
58 SCIP_EXPORT
60  SCIP_CUTSEL* cutsel /**< cut selector */
61  );
62 
63 /** gets description of cut selector */
64 SCIP_EXPORT
65 const char* SCIPcutselGetDesc(
66  SCIP_CUTSEL* cutsel /**< cut selector */
67  );
68 
69 /** gets priority of cut selector */
70 SCIP_EXPORT
72  SCIP_CUTSEL* cutsel /**< cut selector */
73  );
74 
75 /** sets user data of cut selector; user has to free old data in advance! */
76 SCIP_EXPORT
78  SCIP_CUTSEL* cutsel, /**< cut selector */
79  SCIP_CUTSELDATA* cutseldata /**< new cut selector user data */
80  );
81 
82 /** is cut selector initialized? */
83 SCIP_EXPORT
85  SCIP_CUTSEL* cutsel /**< cut selector */
86  );
87 
88 /** gets time in seconds used in this cut selector for setting up for next stages */
89 SCIP_EXPORT
91  SCIP_CUTSEL* cutsel /**< cut selector */
92  );
93 
94 /** gets time in seconds used in this cut selector */
95 SCIP_EXPORT
97  SCIP_CUTSEL* cutsel /**< cut selector */
98  );
99 
100 /** get number of times the cutselector was called */
102  SCIP_CUTSEL* cutsel /**< cut selector */
103  );
104 
105 /** get number of times the cutselector was called at the root */
107  SCIP_CUTSEL* cutsel /**< cut selector */
108  );
109 
110 /** get total number of cuts that were selected at the root */
112  SCIP_CUTSEL* cutsel /**< cut selector */
113  );
114 
115 /** get total number of forced cuts that were selected at the root */
117  SCIP_CUTSEL* cutsel /**< cut selector */
118  );
119 
120 /** get total number of root cuts that were filtered */
122  SCIP_CUTSEL* cutsel /**< cut selector */
123  );
124 
125 /** get total number of local cuts that were selected */
127  SCIP_CUTSEL* cutsel /**< cut selector */
128  );
129 
130 /** get total number of forced local cuts that were selected */
132  SCIP_CUTSEL* cutsel /**< cut selector */
133  );
134 
135 /** get total number of local cuts that were filtered */
137  SCIP_CUTSEL* cutsel /**< cut selector */
138  );
139 
140 /** compares two cut selectors w. r. to their priority */
141 SCIP_EXPORT
142 SCIP_DECL_SORTPTRCOMP(SCIPcutselComp);
143 
144 /** @} */
145 
146 #ifdef __cplusplus
147 }
148 #endif
149 
150 #endif
const char * SCIPcutselGetName(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:159
type definitions for miscellaneous datastructures
SCIP_CUTSELDATA * SCIPcutselGetData(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:419
struct SCIP_CutselData SCIP_CUTSELDATA
Definition: type_cutsel.h:53
SCIP_Longint SCIPcutselGetNCalls(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:575
SCIP_Longint SCIPcutselGetNRootForcedCuts(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:605
type definitions for cut selectors
SCIP_Longint SCIPcutselGetNRootCutsFiltered(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:615
void SCIPcutselSetData(SCIP_CUTSEL *cutsel, SCIP_CUTSELDATA *cutseldata)
Definition: cutsel.c:429
SCIP_DECL_SORTPTRCOMP(SCIPcutselComp)
Definition: cutsel.c:655
SCIP_Longint SCIPcutselGetNRootCalls(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:585
SCIP_Real SCIPcutselGetSetupTime(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:555
SCIP_Longint SCIPcutselGetNLocalCutsFiltered(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:645
SCIP_Longint SCIPcutselGetNRootCuts(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:595
SCIP_Bool SCIPcutselIsInitialized(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:545
#define SCIP_Bool
Definition: def.h:91
const char * SCIPcutselGetDesc(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:245
SCIP_Longint SCIPcutselGetNLocalCuts(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:625
int SCIPcutselGetPriority(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:440
#define SCIP_Real
Definition: def.h:173
#define SCIP_Longint
Definition: def.h:158
SCIP_Real SCIPcutselGetTime(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:565
common defines and data types used in all packages of SCIP
SCIP_Longint SCIPcutselGetNLocalForcedCuts(SCIP_CUTSEL *cutsel)
Definition: cutsel.c:635