|
Alps 1.5.12
|
Node pool is used to store the nodes to be processed. More...
#include <AlpsNodePool.h>
Inheritance diagram for AlpsNodePool:
Collaboration diagram for AlpsNodePool:Public Member Functions | |
| AlpsNodePool () | |
| AlpsNodePool (AlpsSearchType type) | |
| virtual | ~AlpsNodePool () |
| int | getNumKnowledges () const |
| Query the number of nodes in the node pool. | |
| double | getBestKnowledgeValue () const |
| Get the "best value" of the nodes in node pool. | |
| AlpsTreeNode * | getBestNode () const |
| Get the "best" nodes in node pool. | |
| bool | hasKnowledge () const |
| Check whether there are still nodes in the node pool. | |
| std::pair< AlpsKnowledge *, double > | getKnowledge () const |
| Get the node with highest priority. | |
| void | popKnowledge () |
| Remove the node with highest priority from the pool. | |
| void | addKnowledge (AlpsKnowledge *node, double priority) |
| Remove the node with highest priority from the pool and the elite list. | |
| const AlpsPriorityQueue< AlpsTreeNode * > & | getCandidateList () const |
| Get a constant reference to the priority queue that stores nodes. | |
| void | setNodeSelection (AlpsSearchStrategy< AlpsTreeNode * > &compare) |
| Set strategy and resort heap. | |
| void | deleteGuts () |
| Delete all the nodes in the pool and free memory. | |
| void | clear () |
| Remove all the nodes in the pool (does not free memory). | |
Public Member Functions inherited from AlpsKnowledgePool | |
| AlpsKnowledgePool () | |
| virtual | ~AlpsKnowledgePool () |
| virtual void | setMaxNumKnowledges (int num) |
| Set the quantity limit of knowledges that can be stored in the pool. | |
| virtual int | getMaxNumKnowledges () const |
| Query the quantity limit of knowledges. | |
| virtual std::pair< AlpsKnowledge *, double > | getBestKnowledge () const |
| Query the best knowledge in the pool. | |
| virtual void | getAllKnowledges (std::vector< std::pair< AlpsKnowledge *, double > > &kls) const |
| Get a reference to all the knowledges in the pool. | |
Private Member Functions | |
| AlpsNodePool (const AlpsNodePool &) | |
| AlpsNodePool & | operator= (const AlpsNodePool &) |
Private Attributes | |
| AlpsPriorityQueue< AlpsTreeNode * > | candidateList_ |
| AlpsSearchType | searchStrategy_ |
Node pool is used to store the nodes to be processed.
Definition at line 37 of file AlpsNodePool.h.
|
private |
|
inline |
Definition at line 48 of file AlpsNodePool.h.
|
inline |
Definition at line 50 of file AlpsNodePool.h.
|
inlinevirtual |
Definition at line 52 of file AlpsNodePool.h.
|
private |
|
inlinevirtual |
Query the number of nodes in the node pool.
Implements AlpsKnowledgePool.
Definition at line 60 of file AlpsNodePool.h.
|
inline |
Get the "best value" of the nodes in node pool.
Definition at line 64 of file AlpsNodePool.h.
|
inline |
Get the "best" nodes in node pool.
Definition at line 80 of file AlpsNodePool.h.
|
inlinevirtual |
Check whether there are still nodes in the node pool.
Reimplemented from AlpsKnowledgePool.
Definition at line 109 of file AlpsNodePool.h.
|
inlinevirtual |
Get the node with highest priority.
Doesn't remove it from the pool
Implements AlpsKnowledgePool.
Definition at line 112 of file AlpsNodePool.h.
|
inlinevirtual |
Remove the node with highest priority from the pool.
Reimplemented from AlpsKnowledgePool.
Definition at line 119 of file AlpsNodePool.h.
|
inlinevirtual |
Remove the node with highest priority from the pool and the elite list.
Add a node to node pool.
Implements AlpsKnowledgePool.
Definition at line 126 of file AlpsNodePool.h.
|
inline |
Get a constant reference to the priority queue that stores nodes.
Definition at line 140 of file AlpsNodePool.h.
|
inline |
Set strategy and resort heap.
Definition at line 143 of file AlpsNodePool.h.
|
inline |
Delete all the nodes in the pool and free memory.
Definition at line 148 of file AlpsNodePool.h.
|
inline |
Remove all the nodes in the pool (does not free memory).
Definition at line 158 of file AlpsNodePool.h.
|
private |
Definition at line 43 of file AlpsNodePool.h.
|
private |
Definition at line 45 of file AlpsNodePool.h.