Scippy

SCIP

Solving Constraint Integer Programs

pub_pricer.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_pricer.h
26 * @ingroup PUBLICCOREAPI
27 * @brief public methods for variable pricers
28 * @author Tobias Achterberg
29 */
30
31/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
32
33#ifndef __SCIP_PUB_PRICER_H__
34#define __SCIP_PUB_PRICER_H__
35
36
37#include "scip/def.h"
38#include "scip/type_misc.h"
39#include "scip/type_pricer.h"
40
41#ifdef __cplusplus
42extern "C" {
43#endif
44
45/**@addtogroup PublicPricerMethods
46 *
47 * @{
48 */
49
50/** compares two pricers w. r. to their priority */
51SCIP_EXPORT
52SCIP_DECL_SORTPTRCOMP(SCIPpricerComp);
53
54/** comparison method for sorting pricers w.r.t. to their name */
55SCIP_EXPORT
56SCIP_DECL_SORTPTRCOMP(SCIPpricerCompName);
57
58/** gets user data of variable pricer */
59SCIP_EXPORT
61 SCIP_PRICER* pricer /**< variable pricer */
62 );
63
64/** sets user data of variable pricer; user has to free old data in advance! */
65SCIP_EXPORT
67 SCIP_PRICER* pricer, /**< variable pricer */
68 SCIP_PRICERDATA* pricerdata /**< new variable pricer user data */
69 );
70
71/** gets name of variable pricer */
72SCIP_EXPORT
73const char* SCIPpricerGetName(
74 SCIP_PRICER* pricer /**< variable pricer */
75 );
76
77/** gets description of variable pricer */
78SCIP_EXPORT
79const char* SCIPpricerGetDesc(
80 SCIP_PRICER* pricer /**< variable pricer */
81 );
82
83/** gets priority of variable pricer */
84SCIP_EXPORT
86 SCIP_PRICER* pricer /**< variable pricer */
87 );
88
89/** gets the number of times, the pricer was called and tried to find a variable with negative reduced costs */
90SCIP_EXPORT
92 SCIP_PRICER* pricer /**< variable pricer */
93 );
94
95/** gets the number of variables with negative reduced costs found by this pricer */
96SCIP_EXPORT
98 SCIP_PRICER* pricer /**< variable pricer */
99 );
100
101/** gets time in seconds used in this pricer for setting up for next stages */
102SCIP_EXPORT
104 SCIP_PRICER* pricer /**< variable pricer */
105 );
106
107/** gets time in seconds used in this pricer */
108SCIP_EXPORT
110 SCIP_PRICER* pricer /**< variable pricer */
111 );
112
113/** returns whether the given pricer is in use in the current problem */
114SCIP_EXPORT
116 SCIP_PRICER* pricer /**< variable pricer */
117 );
118
119/** returns whether the pricer should be delayed until no other pricer finds a new variable */
120SCIP_EXPORT
122 SCIP_PRICER* pricer /**< variable pricer */
123 );
124
125/** is variable pricer initialized? */
126SCIP_EXPORT
128 SCIP_PRICER* pricer /**< variable pricer */
129 );
130
131/** @} */
132
133#ifdef __cplusplus
134}
135#endif
136
137#endif
common defines and data types used in all packages of SCIP
#define SCIP_Bool
Definition: def.h:91
#define SCIP_Real
Definition: def.h:172
const char * SCIPpricerGetDesc(SCIP_PRICER *pricer)
Definition: pricer.c:610
int SCIPpricerGetNVarsFound(SCIP_PRICER *pricer)
Definition: pricer.c:654
SCIP_Bool SCIPpricerIsDelayed(SCIP_PRICER *pricer)
Definition: pricer.c:706
void SCIPpricerSetData(SCIP_PRICER *pricer, SCIP_PRICERDATA *pricerdata)
Definition: pricer.c:523
SCIP_PRICERDATA * SCIPpricerGetData(SCIP_PRICER *pricer)
Definition: pricer.c:513
SCIP_Bool SCIPpricerIsActive(SCIP_PRICER *pricer)
Definition: pricer.c:696
int SCIPpricerGetPriority(SCIP_PRICER *pricer)
Definition: pricer.c:620
const char * SCIPpricerGetName(SCIP_PRICER *pricer)
Definition: pricer.c:600
SCIP_Bool SCIPpricerIsInitialized(SCIP_PRICER *pricer)
Definition: pricer.c:716
SCIP_Real SCIPpricerGetSetupTime(SCIP_PRICER *pricer)
Definition: pricer.c:664
SCIP_Real SCIPpricerGetTime(SCIP_PRICER *pricer)
Definition: pricer.c:674
int SCIPpricerGetNCalls(SCIP_PRICER *pricer)
Definition: pricer.c:644
SCIP_DECL_SORTPTRCOMP(SCIPpricerComp)
Definition: pricer.c:54
type definitions for miscellaneous datastructures
type definitions for variable pricers
struct SCIP_PricerData SCIP_PRICERDATA
Definition: type_pricer.h:45