![]() |
aGrUM
0.16.0
|
Implementation of a Terminal Node Policy that maps nodeid to a set of value. More...
#include <agrum/multidim/FunctionGraphUtilities/terminalNodePolicies/SetTerminalNodePolicy.h>
Public Member Functions | |
~SetTerminalNodePolicy () | |
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 | |
HashTable< NodeId, GUM_SCALAR *> | __map |
The mapping between NodeIds and Value Sets. More... | |
HashTableConstIteratorSafe< NodeId, GUM_SCALAR *> | __mappy |
The mapping between NodeIds and Value Sets. More... | |
const NodeId | jocker = 0 |
The mapping between NodeIds and Value Sets. More... | |
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 to a set of value.
Definition at line 48 of file SetTerminalNodePolicy.h.
|
inline |
Definition at line 50 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::clearAllTerminalNodes().
|
inline |
Insert a new terminal node with given value.
Definition at line 58 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::HashTable< Key, Val, Alloc >::exists(), and gum::HashTable< Key, Val, Alloc >::insert().
|
inline |
Initializes the constant safe iterator on terminal nodes.
Definition at line 118 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::SetTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::HashTable< Key, Val, Alloc >::cbeginSafe().
|
inline |
Erase all terminal nodes.
Definition at line 69 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::HashTable< Key, Val, Alloc >::beginSafe(), gum::HashTable< Key, Val, Alloc >::clear(), and gum::HashTable< Key, Val, Alloc >::endSafe().
Referenced by gum::SetTerminalNodePolicy< GUM_SCALAR >::~SetTerminalNodePolicy().
|
inline |
Remove node matching given id.
Definition at line 64 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::HashTable< Key, Val, Alloc >::erase(), and gum::HashTable< Key, Val, Alloc >::exists().
|
inline |
Returns true if a terminal node matching this id exists.
Definition at line 83 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, and gum::HashTable< Key, Val, Alloc >::exists().
|
inline |
Returns true if a terminal node matching this value exists.
Definition at line 88 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::terminalNodeId().
|
inline |
Indicates if constant safe iterator has reach end of terminal nodes list.
Definition at line 121 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::SetTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::HashTable< Key, Val, Alloc >::cendSafe().
|
inline |
Returns the id of the current terminal nodes pointed by the constant safe iterator.
Definition at line 132 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::HashTableConstIteratorSafe< Key, Val >::key().
|
inline |
Increments the constant safe iterator.
Definition at line 124 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__mappy.
|
inline |
Returns the id of the terminal node that has the given value.
Definition at line 104 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map, gum::HashTable< Key, Val, Alloc >::beginSafe(), gum::HashTable< Key, Val, Alloc >::endSafe(), and gum::SetTerminalNodePolicy< GUM_SCALAR >::jocker.
Referenced by gum::SetTerminalNodePolicy< GUM_SCALAR >::existsTerminalNodeWithValue().
|
inline |
Returns the value of the terminal node that has the given id.
Definition at line 99 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__map.
|
inline |
Returns the value of the current terminal nodes pointed by the constant safe iterator.
Definition at line 128 of file SetTerminalNodePolicy.h.
References gum::SetTerminalNodePolicy< GUM_SCALAR >::__mappy, and gum::HashTableConstIteratorSafe< Key, Val >::val().
|
private |
The mapping between NodeIds and Value Sets.
Definition at line 136 of file SetTerminalNodePolicy.h.
Referenced by gum::SetTerminalNodePolicy< GUM_SCALAR >::addTerminalNode(), gum::SetTerminalNodePolicy< GUM_SCALAR >::beginValues(), gum::SetTerminalNodePolicy< GUM_SCALAR >::clearAllTerminalNodes(), gum::SetTerminalNodePolicy< GUM_SCALAR >::eraseTerminalNode(), gum::SetTerminalNodePolicy< GUM_SCALAR >::existsTerminalNodeWithId(), gum::SetTerminalNodePolicy< GUM_SCALAR >::hasValue(), gum::SetTerminalNodePolicy< GUM_SCALAR >::terminalNodeId(), and gum::SetTerminalNodePolicy< GUM_SCALAR >::terminalNodeValue().
|
mutableprivate |
The mapping between NodeIds and Value Sets.
Definition at line 137 of file SetTerminalNodePolicy.h.
Referenced by gum::SetTerminalNodePolicy< GUM_SCALAR >::beginValues(), gum::SetTerminalNodePolicy< GUM_SCALAR >::hasValue(), gum::SetTerminalNodePolicy< GUM_SCALAR >::id(), gum::SetTerminalNodePolicy< GUM_SCALAR >::nextValue(), and gum::SetTerminalNodePolicy< GUM_SCALAR >::value().
|
private |
The mapping between NodeIds and Value Sets.
Definition at line 139 of file SetTerminalNodePolicy.h.
Referenced by gum::SetTerminalNodePolicy< GUM_SCALAR >::terminalNodeId().