Scippy

    SCIP

    Solving Constraint Integer Programs

    scip::ObjProp Class Referenceabstract

    Detailed Description

    C++ wrapper for propagators.

    This class defines the interface for propagators 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 53 of file objprop.h.

    C++ wrapper for propagators. More...

    #include <objprop.h>

    Public Member Functions

     ObjProp (SCIP *scip, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming)
     
     ObjProp (const ObjProp &o)
     
     ObjProp (ObjProp &&o)
     
    virtual ~ObjProp ()
     
    ObjPropoperator= (const ObjProp &o)=delete
     
    ObjPropoperator= (ObjProp &&o)=delete
     
    virtual SCIP_DECL_PROPFREE (scip_free)
     
    virtual SCIP_DECL_PROPINIT (scip_init)
     
    virtual SCIP_DECL_PROPEXIT (scip_exit)
     
    virtual SCIP_DECL_PROPINITPRE (scip_initpre)
     
    virtual SCIP_DECL_PROPEXITPRE (scip_exitpre)
     
    virtual SCIP_DECL_PROPINITSOL (scip_initsol)
     
    virtual SCIP_DECL_PROPEXITSOL (scip_exitsol)
     
    virtual SCIP_DECL_PROPPRESOL (scip_presol)
     
    virtual SCIP_DECL_PROPEXEC (scip_exec)=0
     
    virtual SCIP_DECL_PROPRESPROP (scip_resprop)
     
    - 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_delay_
     
    const SCIP_PROPTIMING scip_timingmask_
     
    const int scip_presol_priority_
     
    const int scip_presol_maxrounds_
     
    const SCIP_PRESOLTIMING scip_presol_timing_
     

    Constructor & Destructor Documentation

    ◆ ObjProp() [1/3]

    scip::ObjProp::ObjProp ( SCIP scip,
    const char *  name,
    const char *  desc,
    int  priority,
    int  freq,
    SCIP_Bool  delay,
    SCIP_PROPTIMING  timingmask,
    int  presolpriority,
    int  presolmaxrounds,
    SCIP_PRESOLTIMING  presoltiming 
    )
    inline

    default constructor

    Parameters
    scipSCIP data structure
    namename of propagator
    descdescription of propagator
    prioritypriority of the propagator
    freqfrequency for calling propagator
    delayshould propagator be delayed, if other propagators found reductions?
    timingmaskpositions in the node solving loop where propagator should be executed
    presolprioritypresolving priority of the propagator (>= 0: before, < 0: after constraint handlers)
    presolmaxroundsmaximal number of presolving rounds the propagator participates in (-1: no limit)
    presoltimingtiming mask of the propagator's presolving method

    Definition at line 90 of file objprop.h.

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

    ◆ ObjProp() [2/3]

    scip::ObjProp::ObjProp ( const ObjProp o)
    inline

    copy constructor

    Definition at line 119 of file objprop.h.

    ◆ ObjProp() [3/3]

    scip::ObjProp::ObjProp ( ObjProp &&  o)
    inline

    move constructor

    Definition at line 126 of file objprop.h.

    References scip_desc_, and scip_name_.

    ◆ ~ObjProp()

    virtual scip::ObjProp::~ObjProp ( )
    inlinevirtual

    destructor

    Definition at line 143 of file objprop.h.

    References scip_, scip_desc_, scip_name_, and SCIPfreeMemoryArray.

    Member Function Documentation

    ◆ operator=() [1/2]

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

    assignment of polymorphic classes causes slicing and is therefore disabled.

    ◆ operator=() [2/2]

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

    assignment of polymorphic classes causes slicing and is therefore disabled.

    ◆ SCIP_DECL_PROPFREE()

    virtual scip::ObjProp::SCIP_DECL_PROPFREE ( scip_free  )
    inlinevirtual

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

    See also
    SCIP_DECL_PROPFREE(x) in type_prop.h

    Definition at line 161 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPINIT()

    virtual scip::ObjProp::SCIP_DECL_PROPINIT ( scip_init  )
    inlinevirtual

    initialization method of propagator (called after problem was transformed)

    See also
    SCIP_DECL_PROPINIT(x) in type_prop.h

    Definition at line 170 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPEXIT()

    virtual scip::ObjProp::SCIP_DECL_PROPEXIT ( scip_exit  )
    inlinevirtual

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

    See also
    SCIP_DECL_PROPEXIT(x) in type_prop.h

    Definition at line 179 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPINITPRE()

    virtual scip::ObjProp::SCIP_DECL_PROPINITPRE ( scip_initpre  )
    inlinevirtual

    presolving initialization method of propagator (called when presolving is about to begin)

    See also
    SCIP_DECL_PROPINITPRE(x) in type_prop.h

    Definition at line 188 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPEXITPRE()

    virtual scip::ObjProp::SCIP_DECL_PROPEXITPRE ( scip_exitpre  )
    inlinevirtual

    presolving deinitialization method of propagator (called after presolving has been finished)

    See also
    SCIP_DECL_PROPEXITPRE(x) in type_prop.h

    Definition at line 197 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPINITSOL()

    virtual scip::ObjProp::SCIP_DECL_PROPINITSOL ( scip_initsol  )
    inlinevirtual

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

    See also
    SCIP_DECL_PROPINITSOL(x) in type_prop.h

    Definition at line 206 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPEXITSOL()

    virtual scip::ObjProp::SCIP_DECL_PROPEXITSOL ( scip_exitsol  )
    inlinevirtual

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

    See also
    SCIP_DECL_PROPEXITSOL(x) in type_prop.h

    Definition at line 215 of file objprop.h.

    References SCIP_OKAY.

    ◆ SCIP_DECL_PROPPRESOL()

    virtual scip::ObjProp::SCIP_DECL_PROPPRESOL ( scip_presol  )
    inlinevirtual

    presolving method of propagator

    See also
    SCIP_DECL_PROPPRESOL(x) in type_prop.h

    Definition at line 224 of file objprop.h.

    References NULL, SCIP_DIDNOTRUN, and SCIP_OKAY.

    ◆ SCIP_DECL_PROPEXEC()

    virtual scip::ObjProp::SCIP_DECL_PROPEXEC ( scip_exec  )
    pure virtual

    execution method of propagator

    See also
    SCIP_DECL_PROPEXEC(x) in type_prop.h

    ◆ SCIP_DECL_PROPRESPROP()

    virtual scip::ObjProp::SCIP_DECL_PROPRESPROP ( scip_resprop  )
    inlinevirtual

    propagation conflict resolving method of propagator

    See also
    SCIP_DECL_PROPRESPROP(x) in type_prop.h

    Definition at line 241 of file objprop.h.

    References NULL, SCIP_DIDNOTFIND, and SCIP_OKAY.

    Field Documentation

    ◆ scip_

    SCIP* scip::ObjProp::scip_

    SCIP data structure

    Definition at line 59 of file objprop.h.

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

    ◆ scip_name_

    char* scip::ObjProp::scip_name_

    name of the propagator

    Definition at line 62 of file objprop.h.

    Referenced by ObjProp(), SCIPincludeObjProp(), and ~ObjProp().

    ◆ scip_desc_

    char* scip::ObjProp::scip_desc_

    description of the propagator

    Definition at line 65 of file objprop.h.

    Referenced by ObjProp(), SCIPincludeObjProp(), and ~ObjProp().

    ◆ scip_priority_

    const int scip::ObjProp::scip_priority_

    default priority of the propagator

    Definition at line 68 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_freq_

    const int scip::ObjProp::scip_freq_

    frequency for calling propagator

    Definition at line 71 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_delay_

    const SCIP_Bool scip::ObjProp::scip_delay_

    should propagator be delayed, if other propagators found reductions?

    Definition at line 74 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_timingmask_

    const SCIP_PROPTIMING scip::ObjProp::scip_timingmask_

    positions in the node solving loop where propagator should be executed

    Definition at line 77 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_presol_priority_

    const int scip::ObjProp::scip_presol_priority_

    default presolving priority of the propagator

    Definition at line 80 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_presol_maxrounds_

    const int scip::ObjProp::scip_presol_maxrounds_

    frequency for calling propagator timing mask of the propagator's presolving method

    Definition at line 83 of file objprop.h.

    Referenced by SCIPincludeObjProp().

    ◆ scip_presol_timing_

    const SCIP_PRESOLTIMING scip::ObjProp::scip_presol_timing_

    Definition at line 86 of file objprop.h.

    Referenced by SCIPincludeObjProp().