Dip  0.92.4
Public Member Functions | Protected Attributes | Private Attributes | List of all members
DippyAlgoMixin Class Reference

Mixin class for Dip Algorithms. More...

#include <DippyDecompAlgo.h>

Inheritance diagram for DippyAlgoMixin:
Inheritance graph
[legend]
Collaboration diagram for DippyAlgoMixin:
Collaboration graph
[legend]

Public Member Functions

 DippyAlgoMixin (UtilParameters &utilParam, PyObject *pProb)
 Constructor. More...
 
bool chooseBranchSet (DecompAlgo *algo, std::vector< std::pair< int, double > > &downBranchLB, std::vector< std::pair< int, double > > &downBranchUB, std::vector< std::pair< int, double > > &upBranchLB, std::vector< std::pair< int, double > > &upBranchUB)
 
PyObject * getPDownLB ()
 
PyObject * getPDownUB ()
 
PyObject * getPUpLB ()
 
PyObject * getPpUpUB ()
 
void postProcessBranch (DecompAlgo *algo, DecompStatus decompStatus)
 
void postProcessNode (DecompAlgo *algo, DecompStatus decompStatus)
 

Protected Attributes

PyObject * m_pProb
 
UtilParametersm_utilParam
 

Private Attributes

PyObject * pDownLB
 
PyObject * pDownUB
 
PyObject * pUpLB
 
PyObject * pUpUB
 

Detailed Description

Mixin class for Dip Algorithms.

This is a helper class for interfacing Dip Algo classes with Python. To add Python support to a standard DecompAlgo, create a subclass which also inherits from DippyAlgoMixin and override the virtual methods to call those provided by the Mixin class. See DippyAlgoC for an example.

Definition at line 22 of file DippyDecompAlgo.h.

Constructor & Destructor Documentation

DippyAlgoMixin::DippyAlgoMixin ( UtilParameters utilParam,
PyObject *  pProb 
)
inline

Constructor.

Parameters
utilParamparameter class
pProba DipProblem python object

Definition at line 39 of file DippyDecompAlgo.h.

Member Function Documentation

bool DippyAlgoMixin::chooseBranchSet ( DecompAlgo algo,
std::vector< std::pair< int, double > > &  downBranchLB,
std::vector< std::pair< int, double > > &  downBranchUB,
std::vector< std::pair< int, double > > &  upBranchLB,
std::vector< std::pair< int, double > > &  upBranchUB 
)
PyObject* DippyAlgoMixin::getPDownLB ( )
inline

Definition at line 50 of file DippyDecompAlgo.h.

References pDownLB.

PyObject* DippyAlgoMixin::getPDownUB ( )
inline

Definition at line 53 of file DippyDecompAlgo.h.

References pDownUB.

PyObject* DippyAlgoMixin::getPUpLB ( )
inline

Definition at line 56 of file DippyDecompAlgo.h.

References pUpLB.

PyObject* DippyAlgoMixin::getPpUpUB ( )
inline

Definition at line 59 of file DippyDecompAlgo.h.

References pUpUB.

void DippyAlgoMixin::postProcessBranch ( DecompAlgo algo,
DecompStatus  decompStatus 
)
void DippyAlgoMixin::postProcessNode ( DecompAlgo algo,
DecompStatus  decompStatus 
)

Member Data Documentation

PyObject* DippyAlgoMixin::pDownLB
private

Definition at line 24 of file DippyDecompAlgo.h.

Referenced by getPDownLB().

PyObject* DippyAlgoMixin::pDownUB
private

Definition at line 25 of file DippyDecompAlgo.h.

Referenced by getPDownUB().

PyObject* DippyAlgoMixin::pUpLB
private

Definition at line 26 of file DippyDecompAlgo.h.

Referenced by getPUpLB().

PyObject* DippyAlgoMixin::pUpUB
private

Definition at line 27 of file DippyDecompAlgo.h.

Referenced by getPpUpUB().

PyObject* DippyAlgoMixin::m_pProb
protected

Definition at line 30 of file DippyDecompAlgo.h.

UtilParameters* DippyAlgoMixin::m_utilParam
protected

Definition at line 31 of file DippyDecompAlgo.h.


The documentation for this class was generated from the following file: