ConicBundle
Public Member Functions | List of all members
ConicBundle::QPModelDataPointer Class Referenceabstract

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>

Inheritance diagram for ConicBundle::QPModelDataPointer:
ConicBundle::CBout ConicBundle::QPModelPointer ConicBundle::QPSolverObject ConicBundle::UQPModelPointer ConicBundle::QPSolverBasicStructures ConicBundle::QPSolverBasicStructures ConicBundle::UQPSolver ConicBundle::UQPSolver ConicBundle::QPSolver ConicBundle::QPSolver

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 QPSumModelDataObjectgenerate_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 QPConeModelDataObjectgenerate_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 QPModelDataObjectget_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
 

Detailed Description

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().


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