aGrUM 3.0.0
a C++ library for (probabilistic) graphical models
gum::ExactPolicy< GUM_ELEMENT > Class Template Referenceabstract

Class implementing exact approximation policy (meaning a value is approximate to itself). More...

#include <agrum/base/core/approximations/exactPolicy.h>

Inheritance diagram for gum::ExactPolicy< GUM_ELEMENT >:
Collaboration diagram for gum::ExactPolicy< GUM_ELEMENT >:

Public Member Functions

Constructors / Destructors
 ExactPolicy ()
 Default constructor.
Accessors/Modifiers
INLINE GUM_ELEMENT fromExact (const GUM_ELEMENT &value) const override
 Convert value to approximation representation.
void combineAdd (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using addition with the given gum::ApproximationPolicy.
void combineSub (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using subtraction with the given gum::ApproximationPolicy.
void combineMult (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using multiplication with the given gum::ApproximationPolicy.
void combineDiv (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using division with the given gum::ApproximationPolicy.
void combineMax (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using max with the given gum::ApproximationPolicy.
void combineMin (const ApproximationPolicy< GUM_ELEMENT > *ap) override
 Combine using min with the given gum::ApproximationPolicy.
Accessors / Modifiers
virtual GUM_SCALAR fromExact (const GUM_SCALAR &value) const=0
 Convert value to his approximation.
virtual void combineAdd (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using addition with the given gum::ApproximationPolicy.
virtual void combineSub (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using subtraction with the given gum::ApproximationPolicy.
virtual void combineMult (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using multiplication with the given gum::ApproximationPolicy.
virtual void combineDiv (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using division with the given gum::ApproximationPolicy.
virtual void combineMax (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using max with the given gum::ApproximationPolicy.
virtual void combineMin (const ApproximationPolicy< GUM_SCALAR > *ap)=0
 Combine using min with the given gum::ApproximationPolicy.

Detailed Description

template<typename GUM_ELEMENT>
class gum::ExactPolicy< GUM_ELEMENT >

Class implementing exact approximation policy (meaning a value is approximate to itself).

Template Parameters
GUM_ELEMENTThe type used for computations.

Definition at line 67 of file exactPolicy.h.

Constructor & Destructor Documentation

◆ ExactPolicy()

template<typename GUM_ELEMENT>
gum::ExactPolicy< GUM_ELEMENT >::ExactPolicy ( )
default

Default constructor.

Member Function Documentation

◆ combineAdd() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineAdd ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using addition with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineAdd() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineAdd ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using addition with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 69 of file exactPolicy_tpl.h.

69{}

◆ combineDiv() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineDiv ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using division with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineDiv() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineDiv ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using division with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 83 of file exactPolicy_tpl.h.

83{}

◆ combineMax() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineMax ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using max with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineMax() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineMax ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using max with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 87 of file exactPolicy_tpl.h.

87{}

◆ combineMin() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineMin ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using min with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineMin() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineMin ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using min with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 91 of file exactPolicy_tpl.h.

91{}

◆ combineMult() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineMult ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using multiplication with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineMult() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineMult ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using multiplication with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 79 of file exactPolicy_tpl.h.

79{}

◆ combineSub() [1/2]

virtual void gum::ApproximationPolicy< GUM_SCALAR >::combineSub ( const ApproximationPolicy< GUM_SCALAR > * ap)
pure virtualinherited

Combine using subtraction with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

◆ combineSub() [2/2]

template<typename GUM_ELEMENT>
void gum::ExactPolicy< GUM_ELEMENT >::combineSub ( const ApproximationPolicy< GUM_ELEMENT > * ap)
override

Combine using subtraction with the given gum::ApproximationPolicy.

Parameters
apThe policy to combine with.

Definition at line 74 of file exactPolicy_tpl.h.

74{}

◆ fromExact() [1/2]

virtual GUM_SCALAR gum::ApproximationPolicy< GUM_SCALAR >::fromExact ( const GUM_SCALAR & value) const
pure virtualinherited

Convert value to his approximation.

This method, at least in release mode, should not verify the limits

Parameters
valueThe converted value.
Returns
The value approximation representation.

◆ fromExact() [2/2]

template<typename GUM_ELEMENT>
GUM_ELEMENT gum::ExactPolicy< GUM_ELEMENT >::fromExact ( const GUM_ELEMENT & value) const
override

Convert value to approximation representation.

Parameters
valueThe converted value.
Returns
The value approximation representation.

Definition at line 63 of file exactPolicy_tpl.h.

63 {
64 return value;
65 }
Class implementing exact approximation policy (meaning a value is approximate to itself).
Definition exactPolicy.h:67

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