C++ wrapper for primal heuristics.
This class defines the interface for primal heuristics implemented in C++. Note that there is a pure virtual function (this function has to be implemented). This function is: scip_exec().
C++ wrapper for primal heuristics. More...
#include <objheur.h>
Public Member Functions | |
ObjHeur (SCIP *scip, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, SCIP_HEURTIMING timingmask, SCIP_Bool usessubscip) | |
ObjHeur (const ObjHeur &o) | |
ObjHeur (ObjHeur &&o) | |
virtual | ~ObjHeur () |
ObjHeur & | operator= (const ObjHeur &o)=delete |
ObjHeur & | operator= (ObjHeur &&o)=delete |
virtual | SCIP_DECL_HEURFREE (scip_free) |
virtual | SCIP_DECL_HEURINIT (scip_init) |
virtual | SCIP_DECL_HEUREXIT (scip_exit) |
virtual | SCIP_DECL_HEURINITSOL (scip_initsol) |
virtual | SCIP_DECL_HEUREXITSOL (scip_exitsol) |
virtual | SCIP_DECL_HEUREXEC (scip_exec)=0 |
![]() | |
virtual | ~ObjCloneable () |
ObjCloneable & | operator= (const ObjCloneable &o)=delete |
ObjCloneable & | operator= (ObjCloneable &&o)=delete |
virtual | SCIP_DECL_OBJCLONEABLECLONE (ObjCloneable *clone) |
virtual | SCIP_DECL_OBJCLONEABLEISCLONEABLE (iscloneable) |
Data Fields | |
SCIP * | scip_ |
char * | scip_name_ |
char * | scip_desc_ |
const char | scip_dispchar_ |
const int | scip_priority_ |
const int | scip_freq_ |
const int | scip_freqofs_ |
const int | scip_maxdepth_ |
const SCIP_HEURTIMING | scip_timingmask_ |
const SCIP_Bool | scip_usessubscip_ |
|
inline |
default constructor
scip | SCIP data structure |
name | name of primal heuristic |
desc | description of primal heuristic |
dispchar | display character of primal heuristic |
priority | priority of the primal heuristic |
freq | frequency for calling primal heuristic |
freqofs | frequency offset for calling primal heuristic |
maxdepth | maximal depth level to call heuristic at (-1: no limit) |
timingmask | positions in the node solving loop where heuristic should be executed; see definition of SCIP_HEURTIMING for possible values |
usessubscip | does the heuristic use a secondary SCIP instance? |
Definition at line 89 of file objheur.h.
References maxdepth, scip_, SCIP_Bool, SCIP_CALL_ABORT, scip_desc_, scip_dispchar_, scip_freq_, scip_freqofs_, scip_maxdepth_, scip_name_, scip_priority_, scip_timingmask_, scip_usessubscip_, and SCIPduplicateMemoryArray.
Referenced by tsp::Heur2opt::Heur2opt(), tsp::HeurFarthestInsert::HeurFarthestInsert(), tsp::HeurFrats::HeurFrats(), ObjHeur(), ObjHeur(), operator=(), and operator=().
|
inline |
copy constructor
Definition at line 119 of file objheur.h.
References ObjHeur(), scip_, scip_desc_, scip_dispchar_, scip_freq_, scip_freqofs_, scip_maxdepth_, scip_name_, scip_priority_, scip_timingmask_, and scip_usessubscip_.
|
inline |
move constructor
Definition at line 126 of file objheur.h.
References ObjHeur(), scip_, scip_desc_, scip_dispchar_, scip_freq_, scip_freqofs_, scip_maxdepth_, scip_name_, scip_priority_, scip_timingmask_, and scip_usessubscip_.
|
inlinevirtual |
destructor
Definition at line 143 of file objheur.h.
References scip_, scip_desc_, scip_name_, and SCIPfreeMemoryArray.
assignment of polymorphic classes causes slicing and is therefore disabled.
References ObjHeur().
assignment of polymorphic classes causes slicing and is therefore disabled.
References ObjHeur().
|
inlinevirtual |
destructor of primal heuristic to free user data (called when SCIP is exiting)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 161 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
initialization method of primal heuristic (called after problem was transformed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 170 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
deinitialization method of primal heuristic (called before transformed problem is freed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 179 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
solving process initialization method of primal heuristic (called when branch and bound process is about to begin)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 188 of file objheur.h.
References SCIP_OKAY.
|
inlinevirtual |
solving process deinitialization method of primal heuristic (called before branch and bound process data is freed)
Reimplemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
Definition at line 197 of file objheur.h.
References SCIP_OKAY.
|
pure virtual |
execution method of primal heuristic
Implemented in tsp::Heur2opt, tsp::HeurFarthestInsert, and tsp::HeurFrats.
SCIP* scip::ObjHeur::scip_ |
char* scip::ObjHeur::scip_name_ |
name of the primal heuristic
Definition at line 62 of file objheur.h.
Referenced by ObjHeur(), ObjHeur(), ObjHeur(), SCIPincludeObjHeur(), and ~ObjHeur().
char* scip::ObjHeur::scip_desc_ |
description of the primal heuristic
Definition at line 65 of file objheur.h.
Referenced by ObjHeur(), ObjHeur(), ObjHeur(), SCIPincludeObjHeur(), and ~ObjHeur().
const char scip::ObjHeur::scip_dispchar_ |
const int scip::ObjHeur::scip_priority_ |
const int scip::ObjHeur::scip_freq_ |
const int scip::ObjHeur::scip_freqofs_ |
const int scip::ObjHeur::scip_maxdepth_ |
const SCIP_HEURTIMING scip::ObjHeur::scip_timingmask_ |