Generated on Thu Jan 16 2025 00:00:00 for Gecode by doxygen 1.14.0

Float view for float variables. More...

#include <view.hpp>

(Note that these are not member symbols.)

template<class Char, class Traits>
std::basic_ostream< Char, Traits > & operator<< (std::basic_ostream< Char, Traits > &os, const FloatView &x)
 Print float variable view.

Constructors and initialization

 FloatView (void)
 Default constructor.
 FloatView (const FloatVar &y)
 Initialize from float variable y.
 FloatView (FloatVarImp *y)
 Initialize from float variable y.

Value access

FloatVal domain (void) const
 Return domain.
FloatNum min (void) const
 Return minimum of domain.
FloatNum max (void) const
 Return maximum of domain.
FloatNum med (void) const
 Return median of domain (closest representation)
FloatVal val (void) const
 Return assigned value.
FloatNum size (void) const
 Return size of domain (distance between maximum and minimum)

Domain tests

bool zero_in (void) const
 Test whether 0 is contained in domain.
bool in (FloatNum n) const
 Test whether n is contained in domain.
bool in (const FloatVal &n) const
 Test whether n is contained in domain.

Domain update by value

ModEvent lq (Space &home, int n)
 Restrict domain values to be less or equal than n.
ModEvent lq (Space &home, FloatNum n)
 Restrict domain values to be less or equal than n.
ModEvent lq (Space &home, FloatVal n)
 Restrict domain values to be less or equal than n.
ModEvent gq (Space &home, int n)
 Restrict domain values to be greater or equal than n.
ModEvent gq (Space &home, FloatNum n)
 Restrict domain values to be greater or equal than n.
ModEvent gq (Space &home, FloatVal n)
 Restrict domain values to be greater or equal than n.
ModEvent eq (Space &home, int n)
 Restrict domain values to be equal to n.
ModEvent eq (Space &home, FloatNum n)
 Restrict domain values to be equal to n.
ModEvent eq (Space &home, const FloatVal &n)
 Restrict domain values to be equal to n.

Delta information for advisors

FloatNum min (const Delta &d) const
 Return minimum value just pruned.
FloatNum max (const Delta &d) const
 Return maximum value just pruned.

View-dependent propagator support

static ModEventDelta med (ModEvent me)
 Translate modification event me to modification event delta for view.

Additional Inherited Members

Public Types inherited from Gecode::VarImpView< FloatVar >
typedef FloatVar VarType
 The variable type corresponding to the view.
typedef FloatVar::VarImpType VarImpType
 The variable implementation type corresponding to the view.
unsigned int degree (void) const
 Return degree (number of subscribed propagators and advisors)
double afc (void) const
 Return accumulated failure count.
bool assigned (void) const
 Test whether view is assigned.
void subscribe (Space &home, Propagator &p, PropCond pc, bool schedule=true)
 Subscribe propagator p with propagation condition pc to view.
void cancel (Space &home, Propagator &p, PropCond pc)
 Cancel subscription of propagator p with propagation condition pc to view.
void reschedule (Space &home, Propagator &p, PropCond pc)
 Re-schedule propagator p with propagation condition pc.
void update (Space &home, VarImpView< FloatVar > &y)
 Update this view to be a clone of view y.
bool operator< (const VarImpView &y) const
 Whether this view comes before view y (arbitray order)
static bool varderived (void)
 Return whether this view is derived from a VarImpView.
static void schedule (Space &home, Propagator &p, ModEvent me)
 Schedule propagator p with modification event me.
static ModEvent me (const ModEventDelta &med)
 Return modification event for view type in med.
static ModEventDelta med (ModEvent me)
 Translate modification event me to modification event delta for view.
static ModEvent modevent (const Delta &d)
 Return modification event.
Protected Member Functions inherited from Gecode::VarImpView< FloatVar >
 VarImpView (void)
 Default constructor.
void varimp (VarImpType *y)
 Set variable implementation to y.
Protected Attributes inherited from Gecode::VarImpView< FloatVar >
VarImpTypex
 Pointer to variable implementation.

Detailed Description

Float view for float variables.

Definition at line 52 of file view.hpp.

Constructor & Destructor Documentation

◆ FloatView() [1/3]

Gecode::Float::FloatView::FloatView ( void )
inline

Default constructor.

Definition at line 43 of file float.hpp.

◆ FloatView() [2/3]

Gecode::Float::FloatView::FloatView ( const FloatVar & y)
inline

Initialize from float variable y.

Definition at line 45 of file float.hpp.

◆ FloatView() [3/3]

Gecode::Float::FloatView::FloatView ( FloatVarImp * y)
inline

Initialize from float variable y.

Definition at line 48 of file float.hpp.

Member Function Documentation

◆ domain()

FloatVal Gecode::Float::FloatView::domain ( void ) const
inline

Return domain.

Definition at line 56 of file float.hpp.

◆ min() [1/2]

FloatNum Gecode::Float::FloatView::min ( void ) const
inline

Return minimum of domain.

Definition at line 60 of file float.hpp.

◆ max() [1/2]

FloatNum Gecode::Float::FloatView::max ( void ) const
inline

Return maximum of domain.

Definition at line 64 of file float.hpp.

◆ med() [1/2]

FloatNum Gecode::Float::FloatView::med ( void ) const
inline

Return median of domain (closest representation)

Definition at line 68 of file float.hpp.

◆ val()

FloatVal Gecode::Float::FloatView::val ( void ) const
inline

Return assigned value.

Throws an exception of type Float::ValOfUnassignedVar if variable is not yet assigned.

Definition at line 72 of file float.hpp.

◆ size()

FloatNum Gecode::Float::FloatView::size ( void ) const
inline

Return size of domain (distance between maximum and minimum)

Definition at line 77 of file float.hpp.

◆ zero_in()

bool Gecode::Float::FloatView::zero_in ( void ) const
inline

Test whether 0 is contained in domain.

Definition at line 87 of file float.hpp.

◆ in() [1/2]

bool Gecode::Float::FloatView::in ( FloatNum n) const
inline

Test whether n is contained in domain.

Definition at line 91 of file float.hpp.

◆ in() [2/2]

bool Gecode::Float::FloatView::in ( const FloatVal & n) const
inline

Test whether n is contained in domain.

Definition at line 95 of file float.hpp.

◆ lq() [1/3]

ModEvent Gecode::Float::FloatView::lq ( Space & home,
int n )
inline

Restrict domain values to be less or equal than n.

Definition at line 105 of file float.hpp.

◆ lq() [2/3]

ModEvent Gecode::Float::FloatView::lq ( Space & home,
FloatNum n )
inline

Restrict domain values to be less or equal than n.

Definition at line 109 of file float.hpp.

◆ lq() [3/3]

ModEvent Gecode::Float::FloatView::lq ( Space & home,
FloatVal n )
inline

Restrict domain values to be less or equal than n.

Definition at line 113 of file float.hpp.

◆ gq() [1/3]

ModEvent Gecode::Float::FloatView::gq ( Space & home,
int n )
inline

Restrict domain values to be greater or equal than n.

Definition at line 118 of file float.hpp.

◆ gq() [2/3]

ModEvent Gecode::Float::FloatView::gq ( Space & home,
FloatNum n )
inline

Restrict domain values to be greater or equal than n.

Definition at line 122 of file float.hpp.

◆ gq() [3/3]

ModEvent Gecode::Float::FloatView::gq ( Space & home,
FloatVal n )
inline

Restrict domain values to be greater or equal than n.

Definition at line 126 of file float.hpp.

◆ eq() [1/3]

ModEvent Gecode::Float::FloatView::eq ( Space & home,
int n )
inline

Restrict domain values to be equal to n.

Definition at line 131 of file float.hpp.

◆ eq() [2/3]

ModEvent Gecode::Float::FloatView::eq ( Space & home,
FloatNum n )
inline

Restrict domain values to be equal to n.

Definition at line 135 of file float.hpp.

◆ eq() [3/3]

ModEvent Gecode::Float::FloatView::eq ( Space & home,
const FloatVal & n )
inline

Restrict domain values to be equal to n.

Definition at line 139 of file float.hpp.

◆ min() [2/2]

FloatNum Gecode::Float::FloatView::min ( const Delta & d) const
inline

Return minimum value just pruned.

Definition at line 150 of file float.hpp.

◆ max() [2/2]

FloatNum Gecode::Float::FloatView::max ( const Delta & d) const
inline

Return maximum value just pruned.

Definition at line 154 of file float.hpp.

◆ med() [2/2]

ModEventDelta Gecode::Float::FloatView::med ( ModEvent me)
inlinestatic

Translate modification event me to modification event delta for view.

Definition at line 160 of file float.hpp.

◆ operator<<()

template<class Char, class Traits>
std::basic_ostream< Char, Traits > & operator<< ( std::basic_ostream< Char, Traits > & os,
const FloatView & x )
related

Print float variable view.

Definition at line 45 of file print.hpp.


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