ConicBundle
|
abstract interface for automatically generating and retrieving the qp blocks with the model data that are needed for specific implementations of the qp solver. More...
#include <QPModelDataObject.hxx>
Public Member Functions | |
QPModelDataPointer (CBout *cb=0, int cbinc=-1) | |
default constructor | |
virtual | ~QPModelDataPointer () |
virtual destructor | |
virtual void | clear_model_data_ptr ()=0 |
set the pointer to NULL | |
virtual int | set_model_data (QPModelDataObject *)=0 |
store the pointer to the object if it matches the required type for the QP solver, otherwise return a nonzero value as error; this is used in the models to return the local qp model data | |
virtual QPSumModelDataObject * | generate_summodel_data (BundleModel *bmp=0)=0 |
returns a new QPSumModelDataObject, that has to be deleted by the caller. The argument is optional and allows to potentially generate different blocks for different derived BundleModel objects; this is used in SumModel to collect the models of the various oracles that are summed over | |
virtual QPConeModelDataObject * | generate_conemodel_data (BundleModel *bmp=0)=0 |
returns a new QPConeModelDataObject suitable for the default conic BundleModel implementations; it has to be deleted by the caller. The argument is optional and allows to potentially generate specialized objects for special BundleModel objects | |
virtual QPModelDataObject * | get_model_data_ptr () const =0 |
returns the pointer value | |
Public Member Functions inherited from ConicBundle::CBout | |
virtual void | set_out (std::ostream *out=0, int print_level=1) |
Specifies the output level (out==NULL: no output at all, out!=NULL and level=0: errors and warnings, level>0 increasingly detailed information) More... | |
virtual void | set_cbout (const CBout *cb, int incr=-1) |
Specifies the output level relative to the given CBout class. More... | |
void | clear_cbout () |
reset to default settings (out=0,print_level=1) | |
CBout (const CBout *cb=0, int incr=-1) | |
calls set_cbout | |
CBout (std::ostream *outp, int pl=1) | |
initialize correspondingly | |
CBout (const CBout &cb, int incr=0) | |
copy constructor | |
virtual bool | cb_out (int pl=-1) const |
Returns true if out!=0 and (pl<print_level), pl<0 should be used for WARNINGS and ERRORS only, pl==0 for usual output. | |
std::ostream & | get_out () const |
If cb_out() returned true, this returns the output stream, but it will abort if called with out==0. | |
std::ostream * | get_out_ptr () const |
returns the pointer to the output stream | |
int | get_print_level () const |
returns the print_level | |
virtual int | mfile_data (std::ostream &out) const |
writes problem data to the given outstream | |
abstract interface for automatically generating and retrieving the qp blocks with the model data that are needed for specific implementations of the qp solver.
In BundleModel::start_augmodel() the model may already have a previous QPModelDataObject. It first test compatibility of this object by using set_model_data(); if this fails, it ask for generating an returning a new one by calling either generate_summodel_data() or generate_conemodel_data(); The model then enters the cutting model information into the available or freshly generated object und uses set_model_data to store the pointer to final model information in the QPModelDataPointer. This information can then be retrieved by teh caller via get_model_data_ptr().