20 #ifndef IPO_DETAIL_VAR_HPP
21 #define IPO_DETAIL_VAR_HPP
24 #include"../IPOException.hpp"
65 Var(
Var& var ) : model( var.model ){}
77 Var(
Var&& var ) : model( var.model ){}
95 virtual void summary( std::ostream& ostream = std::cout,
96 std::string
const& prefix =
"" )
const = 0;
Var(ModelBase &model)
Constructor needs a model so that variable can only be attached to one model.
virtual ~Var()=0
Virtual destructor to make class abstract.
double constexpr infinity
Infinity: use for unbounded variables.
ModelBase & model
A Model to attach this to.
Abstract base class for model.
Var(Var &var)
Copy constructor.
Var(Var &&var)
Move constructor.
Var & operator=(Var &var)
Copy assignment operator.
virtual void notify()=0
Notify function that model must implement.
double constexpr minusInfinity
Negative infinity: use for unbounded variables.
ModelBase const *const getModel() const
Get pointer to model.
Abstract base class for Variable and Array;.
virtual void summary(std::ostream &ostream=std::cout, std::string const &prefix="") const =0
Create a summary of this object.
This namespace holds all the interior-point optimisation classes.