Scippy

SCIP

Solving Constraint Integer Programs

scip::ObjRelax Class Referenceabstract

Detailed Description

C++ wrapper for relaxation handlers.

This class defines the interface for relaxation handlers implemented in C++. Note that there is a pure virtual function (this function has to be implemented). This function is: scip_exec().

Definition at line 52 of file objrelax.h.

C++ wrapper for relaxation handlers. More...

#include <objrelax.h>

Public Member Functions

 ObjRelax (SCIP *scip, const char *name, const char *desc, int priority, int freq, SCIP_Bool includeslp)
 
 ObjRelax (const ObjRelax &o)
 
 ObjRelax (ObjRelax &&o)
 
virtual ~ObjRelax ()
 
ObjRelaxoperator= (const ObjRelax &o)=delete
 
ObjRelaxoperator= (ObjRelax &&o)=delete
 
virtual SCIP_DECL_RELAXFREE (scip_free)
 
virtual SCIP_DECL_RELAXINIT (scip_init)
 
virtual SCIP_DECL_RELAXEXIT (scip_exit)
 
virtual SCIP_DECL_RELAXINITSOL (scip_initsol)
 
virtual SCIP_DECL_RELAXEXITSOL (scip_exitsol)
 
virtual SCIP_DECL_RELAXEXEC (scip_exec)=0
 
- Public Member Functions inherited from scip::ObjCloneable
virtual ~ObjCloneable ()
 
ObjCloneableoperator= (const ObjCloneable &o)=delete
 
ObjCloneableoperator= (ObjCloneable &&o)=delete
 
virtual SCIP_DECL_OBJCLONEABLECLONE (ObjCloneable *clone)
 
virtual SCIP_DECL_OBJCLONEABLEISCLONEABLE (iscloneable)
 

Data Fields

SCIPscip_
 
char * scip_name_
 
char * scip_desc_
 
const int scip_priority_
 
const int scip_freq_
 
const SCIP_Bool scip_includeslp_
 

Constructor & Destructor Documentation

◆ ObjRelax() [1/3]

scip::ObjRelax::ObjRelax ( SCIP scip,
const char *  name,
const char *  desc,
int  priority,
int  freq,
SCIP_Bool  includeslp 
)
inline

default constructor

Parameters
scipSCIP data structure
namename of relaxator
descdescription of relaxator
prioritypriority of the relaxator (negative: after LP, non-negative: before LP)
freqfrequency for calling relaxator
includeslpDoes the relaxator contain all cuts in the LP?

Definition at line 76 of file objrelax.h.

References scip_, SCIP_CALL_ABORT, scip_desc_, scip_name_, and SCIPduplicateMemoryArray.

◆ ObjRelax() [2/3]

scip::ObjRelax::ObjRelax ( const ObjRelax o)
inline

copy constructor

Definition at line 97 of file objrelax.h.

◆ ObjRelax() [3/3]

scip::ObjRelax::ObjRelax ( ObjRelax &&  o)
inline

move constructor

Definition at line 103 of file objrelax.h.

References scip_desc_, and scip_name_.

◆ ~ObjRelax()

virtual scip::ObjRelax::~ObjRelax ( )
inlinevirtual

destructor

Definition at line 116 of file objrelax.h.

References scip_, scip_desc_, scip_name_, and SCIPfreeMemoryArray.

Member Function Documentation

◆ operator=() [1/2]

ObjRelax & scip::ObjRelax::operator= ( const ObjRelax o)
delete

assignment of polymorphic classes causes slicing and is therefore disabled.

◆ operator=() [2/2]

ObjRelax & scip::ObjRelax::operator= ( ObjRelax &&  o)
delete

assignment of polymorphic classes causes slicing and is therefore disabled.

◆ SCIP_DECL_RELAXFREE()

virtual scip::ObjRelax::SCIP_DECL_RELAXFREE ( scip_free  )
inlinevirtual

destructor of relaxator to free user data (called when SCIP is exiting)

See also
SCIP_DECL_RELAXFREE(x) in type_relax.h

Definition at line 134 of file objrelax.h.

References SCIP_OKAY.

◆ SCIP_DECL_RELAXINIT()

virtual scip::ObjRelax::SCIP_DECL_RELAXINIT ( scip_init  )
inlinevirtual

initialization method of relaxator (called after problem was transformed)

See also
SCIP_DECL_RELAXINIT(x) in type_relax.h

Definition at line 143 of file objrelax.h.

References SCIP_OKAY.

◆ SCIP_DECL_RELAXEXIT()

virtual scip::ObjRelax::SCIP_DECL_RELAXEXIT ( scip_exit  )
inlinevirtual

deinitialization method of relaxator (called before transformed problem is freed)

See also
SCIP_DECL_RELAXEXIT(x) in type_relax.h

Definition at line 152 of file objrelax.h.

References SCIP_OKAY.

◆ SCIP_DECL_RELAXINITSOL()

virtual scip::ObjRelax::SCIP_DECL_RELAXINITSOL ( scip_initsol  )
inlinevirtual

solving process initialization method of relaxator (called when branch and bound process is about to begin)

See also
SCIP_DECL_RELAXINITSOL(x) in type_relax.h

Definition at line 161 of file objrelax.h.

References SCIP_OKAY.

◆ SCIP_DECL_RELAXEXITSOL()

virtual scip::ObjRelax::SCIP_DECL_RELAXEXITSOL ( scip_exitsol  )
inlinevirtual

solving process deinitialization method of relaxator (called before branch and bound process data is freed)

See also
SCIP_DECL_RELAXEXITSOL(x) in type_relax.h

Definition at line 170 of file objrelax.h.

References SCIP_OKAY.

◆ SCIP_DECL_RELAXEXEC()

virtual scip::ObjRelax::SCIP_DECL_RELAXEXEC ( scip_exec  )
pure virtual

execution method of relaxator

See also
SCIP_DECL_RELAXEXEC(x) in type_relax.h

Field Documentation

◆ scip_

SCIP* scip::ObjRelax::scip_

SCIP data structure

Definition at line 58 of file objrelax.h.

Referenced by ObjRelax(), and ~ObjRelax().

◆ scip_name_

char* scip::ObjRelax::scip_name_

name of the relaxator

Definition at line 61 of file objrelax.h.

Referenced by ObjRelax(), SCIPincludeObjRelax(), and ~ObjRelax().

◆ scip_desc_

char* scip::ObjRelax::scip_desc_

description of the relaxator

Definition at line 64 of file objrelax.h.

Referenced by ObjRelax(), SCIPincludeObjRelax(), and ~ObjRelax().

◆ scip_priority_

const int scip::ObjRelax::scip_priority_

default priority of the relaxator (negative: call after LP, non-negative: call before LP)

Definition at line 67 of file objrelax.h.

Referenced by SCIPincludeObjRelax().

◆ scip_freq_

const int scip::ObjRelax::scip_freq_

frequency for calling relaxator

Definition at line 70 of file objrelax.h.

Referenced by SCIPincludeObjRelax().

◆ scip_includeslp_

const SCIP_Bool scip::ObjRelax::scip_includeslp_

does the relaxator contain all cuts in the LP?

Definition at line 73 of file objrelax.h.