![]() |
aGrUM
0.16.0
|
Implementation of a Terminal Node Policy that maps nodeid directly to value. More...
#include <agrum/multidim/FunctionGraphUtilities/terminalNodePolicies/ExactTerminalNodePolicy.h>
Public Member Functions | |
Terminal Node Creation and Destruction | |
void | addTerminalNode (const NodeId &n, const GUM_SCALAR &v) |
Insert a new terminal node with given value. More... | |
void | eraseTerminalNode (const NodeId &n) |
Remove node matching given id. More... | |
void | clearAllTerminalNodes () |
Erase all terminal nodes. More... | |
Terminal Nodes Existence | |
bool | existsTerminalNodeWithId (const NodeId &n) const |
Returns true if a terminal node matching this id exists. More... | |
bool | existsTerminalNodeWithValue (const GUM_SCALAR &v) const |
Returns true if a terminal node matching this value exists. More... | |
Terminal Nodes value and id access | |
const GUM_SCALAR & | terminalNodeValue (const NodeId &n) const |
Returns the value of the terminal node that has the given id. More... | |
const NodeId & | terminalNodeId (const GUM_SCALAR &v) const |
Returns the id of the terminal node that has the given value. More... | |
Iterator on Terminal Nodes | |
void | beginValues () const |
Initializes the constant safe iterator on terminal nodes. More... | |
bool | hasValue () const |
Indicates if constant safe iterator has reach end of terminal nodes list. More... | |
void | nextValue () const |
Increments the constant safe iterator. More... | |
const GUM_SCALAR & | value () const |
Returns the value of the current terminal nodes pointed by the constant safe iterator. More... | |
const NodeId & | id () const |
Returns the id of the current terminal nodes pointed by the constant safe iterator. More... | |
Implementation of a Terminal Node Policy that maps nodeid directly to value.
Definition at line 50 of file ExactTerminalNodePolicy.h.
|
inlinevirtual |
Insert a new terminal node with given value.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 58 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::insert().
|
inlinevirtual |
Initializes the constant safe iterator on terminal nodes.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 107 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, gum::ExactTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::beginSafe().
Referenced by gum::StructuredPlaner< double >::makePlanning().
|
inlinevirtual |
Erase all terminal nodes.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 66 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::clear().
|
inlinevirtual |
Remove node matching given id.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 63 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::eraseFirst().
|
inlinevirtual |
Returns true if a terminal node matching this id exists.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 75 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::existsFirst().
|
inlinevirtual |
Returns true if a terminal node matching this value exists.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 80 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::existsSecond().
|
inlinevirtual |
Indicates if constant safe iterator has reach end of terminal nodes list.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 110 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, gum::ExactTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::endSafe().
Referenced by gum::StructuredPlaner< double >::makePlanning().
|
inlinevirtual |
Returns the id of the current terminal nodes pointed by the constant safe iterator.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 121 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::BijectionIteratorSafe< T1, T2 >::first().
|
inlinevirtual |
Increments the constant safe iterator.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 113 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__mappy.
Referenced by gum::StructuredPlaner< double >::makePlanning().
|
inlinevirtual |
Returns the id of the terminal node that has the given value.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 96 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::first().
Referenced by gum::StatesCounter::__incState().
|
inlinevirtual |
Returns the value of the terminal node that has the given id.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 91 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__map, and gum::BijectionImplementation< T1, T2, Alloc, Gen >::second().
|
inlinevirtual |
Returns the value of the current terminal nodes pointed by the constant safe iterator.
Implements gum::ITerminalNodePolicy< GUM_SCALAR >.
Definition at line 117 of file ExactTerminalNodePolicy.h.
References gum::ExactTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::BijectionIteratorSafe< T1, T2 >::second().
Referenced by gum::StructuredPlaner< double >::makePlanning().
|
private |
Definition at line 126 of file ExactTerminalNodePolicy.h.
Referenced by gum::ExactTerminalNodePolicy< GUM_SCALAR >::addTerminalNode(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::beginValues(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::clearAllTerminalNodes(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::eraseTerminalNode(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::existsTerminalNodeWithId(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::existsTerminalNodeWithValue(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::hasValue(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::terminalNodeId(), and gum::ExactTerminalNodePolicy< GUM_SCALAR >::terminalNodeValue().
|
mutableprivate |
Definition at line 127 of file ExactTerminalNodePolicy.h.
Referenced by gum::ExactTerminalNodePolicy< GUM_SCALAR >::beginValues(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::hasValue(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::id(), gum::ExactTerminalNodePolicy< GUM_SCALAR >::nextValue(), and gum::ExactTerminalNodePolicy< GUM_SCALAR >::value().