#include <HeuristicalTreeGenerator.h>

Public Member Functions | |
| void | addHeuristic (boost::shared_ptr< AbstractHeuristic > pHeuristic) |
| void | buildTree (ObjectSetList pObjectSets, boost::shared_ptr< TreeNode > &pRoot) |
| void | buildTree (ObjectSetList pTrajectories, boost::shared_ptr< TreeNode > &pRoot, std::string pType) |
| void | evaluateHeuristics (std::vector< boost::shared_ptr< TreeNode > > pClusters) |
| void | evaluateHeuristics (std::vector< boost::shared_ptr< TreeNode > > pClusters, boost::shared_ptr< TreeNode > pChild) |
| HeuristicalTreeGenerator () | |
| ~HeuristicalTreeGenerator () | |
Public Member Functions inherited from SceneModel::AbstractGraphGenerator | |
| AbstractGraphGenerator () | |
| virtual | ~AbstractGraphGenerator () |
Private Member Functions | |
| void | deleteEmptyObjectSets (ObjectSetList &pObjectSets) |
Private Attributes | |
| std::vector< boost::shared_ptr< AbstractHeuristic > > | mHeuristics |
Realization of the abstract tree generator class. It creates the tree by evaluating predefined relations and clustering the trajectories with the best score.
Definition at line 47 of file HeuristicalTreeGenerator.h.
| SceneModel::HeuristicalTreeGenerator::HeuristicalTreeGenerator | ( | ) |
Constructor.
Definition at line 23 of file HeuristicalTreeGenerator.cpp.
| SceneModel::HeuristicalTreeGenerator::~HeuristicalTreeGenerator | ( | ) |
Destructor.
Definition at line 28 of file HeuristicalTreeGenerator.cpp.
| void SceneModel::HeuristicalTreeGenerator::addHeuristic | ( | boost::shared_ptr< AbstractHeuristic > | pHeuristic | ) |
Adds a heuristic.
| pHeuristic | The heuristic to add. |
Definition at line 180 of file HeuristicalTreeGenerator.cpp.
|
virtual |
Builds the tree using agglomerative clustering.
| pObjectSets | The list of trajectories to build the tree from. |
| pRoot | The root node of the tree. |
Reimplemented from SceneModel::AbstractGraphGenerator.
Definition at line 32 of file HeuristicalTreeGenerator.cpp.
|
virtual |
Builds the tree, forces the object with the given type as root node and appends a new node to what ever node it is appropriate
| pTrajectories | The list of trajectories to build the tree from. |
| pRoot | The root node of the tree. |
| pType | Type of the object that should be forced as root node. |
Reimplemented from SceneModel::AbstractGraphGenerator.
Definition at line 88 of file HeuristicalTreeGenerator.cpp.
|
private |
Deletes empty object sets.
| pObjectSets | The list of trajectories to build the tree from. |
Definition at line 218 of file HeuristicalTreeGenerator.cpp.
| void SceneModel::HeuristicalTreeGenerator::evaluateHeuristics | ( | std::vector< boost::shared_ptr< TreeNode > > | pClusters | ) |
Find the heuristic that generates the highest score.
| pClusters | The list of trajectories to build the tree from. |
Definition at line 185 of file HeuristicalTreeGenerator.cpp.
| void SceneModel::HeuristicalTreeGenerator::evaluateHeuristics | ( | std::vector< boost::shared_ptr< TreeNode > > | pClusters, |
| boost::shared_ptr< TreeNode > | pChild | ||
| ) |
Find the heuristic that generates the highest score.
| pClusters | The list of trajectories to build the tree from. |
| pChild | The node that must be the child node. |
Definition at line 201 of file HeuristicalTreeGenerator.cpp.
|
private |
A list of heuristics used for clustering.
Definition at line 111 of file HeuristicalTreeGenerator.h.