ConicBundle
|
abstract interface for informing the bundle model routines about changes in the oracle function and, possibly, for modifying the affine transformation of the oracle function's arguments. More...
#include <FunctionObjectModification.hxx>
Public Member Functions | |
FunctionObjectModification (OracleModification *in_oracle_md=0, AFTModification *in_trafo_aftm=0) | |
specifies Modifications for oracle and possibly its AFT | |
FunctionObjectModification (const FunctionObjectModification &fom) | |
copy | |
virtual | ~FunctionObjectModification () |
no deletions are carried out here | |
FunctionObjectModification & | operator= (const FunctionObjectModification &fom) |
assignment operator (copies the pointers, no new objects) | |
virtual void | set_oracle_modification (OracleModification *oracle_mdf) |
set an AFTModification for the AffineFunctionTransformation of the argument | |
virtual void | set_aft_modification (AFTModification *in_aftmdf) |
set an AFTModification for the AffineFunctionTransformation of the argument | |
virtual AFTModification * | get_aft_modification () |
returns the current AFTModification | |
virtual const AFTModification * | get_aft_modification () const |
returns the current AFTModification for the const case | |
virtual OracleModification * | get_oracle_modification () |
returns the current AFTModification | |
virtual const OracleModification * | get_oracle_modification () const |
returns the current AFTModification for the const case | |
Private Attributes | |
OracleModification * | oracle_modification |
pointer to a description of modifications of the oracle (and this typically changes the model as well, but not necessarily its tranformation), may be NULL. Any object pointed to here is NOT deleted on destruction of this. | |
AFTModification * | trafo_aftmdf |
pointer to a description of the modifications of the AffineFunctionTransformation of the model (does not change the model, but the transformation), may be NULL. Any object pointed to here is NOT deleted on destruction of this | |
abstract interface for informing the bundle model routines about changes in the oracle function and, possibly, for modifying the affine transformation of the oracle function's arguments.
This is just a container for the pointers to the (one or two) modification(s). Nothing is deleted here, but it may well be deleted by the function that receives the container ...
Dynamic changes in the oracle function (during the runtime of the bundle solver) are a subtle issue and should only be used if you are aware of its mathematical implications!