|
DHART
|
Manages rules and ids for different types of geometry in the graph generator. More...
#include <graph_generator.h>
Collaboration diagram for HF::GraphGenerator::GeometryFlagMap:Public Member Functions | |
| void | SetGeometryIds (const std::vector< int > &obstacle_geometry, const std::vector< int > &walkable_geometry) |
| Set geometry ids as being walkable or obstacles. More... | |
| bool | HasKey (int id) const |
| Check if this id exists in the dictionary. More... | |
| HIT_FLAG | operator[] (int id) const |
| Get the flag of the geometry in this hit dictionary. More... | |
| void | Set (int id, HIT_FLAG flag) |
| Set the value of a key in the internal dictionary. More... | |
Public Attributes | |
| GeometryFilterMode | Mode = GeometryFilterMode::ALL_INTERSECTIONS |
| Filter mode of this GeometryFlagMap. More... | |
Private Member Functions | |
| void | DetermineFilterMode (const std::vector< int > &walkable, const std::vector< int > &obstacle) |
| Set the filter mode of this GeometryFlagMap based on the input types. More... | |
Private Attributes | |
| hashmap | internal_dictionary |
Manages rules and ids for different types of geometry in the graph generator.
Definition at line 157 of file graph_generator.h.
|
inlineprivate |
Set the filter mode of this GeometryFlagMap based on the input types.
| walkable | Array of walkable geometry IDs |
| obstacle | Array of obstacle geometry IDs |
If the walkable array is empty, then set the mode to obstacles only. If the obstacle and the walkable arrays are empty set the mode to none If both obstacle and walkable arrays are specified, set this mode to obstacles and floors.
Definition at line 176 of file graph_generator.h.
References HF::GraphGenerator::ALL_INTERSECTIONS, Mode, HF::GraphGenerator::OBSTACLES_AND_FLOORS, and HF::GraphGenerator::OBSTACLES_ONLY.
Referenced by SetGeometryIds().
Here is the caller graph for this function:
|
inline |
Check if this id exists in the dictionary.
| id | ID to check for |
Definition at line 219 of file graph_generator.h.
References internal_dictionary.
Referenced by operator[]().
Here is the caller graph for this function:
|
inline |
Get the flag of the geometry in this hit dictionary.
| id | ID of geometry to get the hitflag of |
id in SetGeometryIDs or HIT_FLAG::NO_FLAG if no flag was ever assigned to idDefinition at line 236 of file graph_generator.h.
References HasKey(), internal_dictionary, and HF::GraphGenerator::NO_FLAG.
Here is the call graph for this function:
|
inline |
Set the value of a key in the internal dictionary.
| id | ID to set as |
id will return flag. If id already has been assigned a flag, the value will be updated to flag. Definition at line 249 of file graph_generator.h.
References internal_dictionary.
Referenced by SetGeometryIds().
Here is the caller graph for this function:
|
inline |
Set geometry ids as being walkable or obstacles.
| obstacle_geometry | IDs of meshes to set as obstacles |
| walkable_geometry | IDs of meshes to set as walkable |
obstacle_geometry will return HIT_FLAG::OBSTACLES when calling operator [] and all geometry in walkable_geometry will return HIT_FLAG::FLOORS when calling operator[] Definition at line 200 of file graph_generator.h.
References DetermineFilterMode(), HF::GraphGenerator::FLOORS, HF::GraphGenerator::OBSTACLES, and Set().
Referenced by HF::GraphGenerator::GraphGenerator::GraphGenerator(), and HF::GraphGenerator::setupRT().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 160 of file graph_generator.h.
Referenced by HasKey(), operator[](), and Set().
| GeometryFilterMode HF::GraphGenerator::GeometryFlagMap::Mode = GeometryFilterMode::ALL_INTERSECTIONS |
Filter mode of this GeometryFlagMap.
Definition at line 189 of file graph_generator.h.
Referenced by HF::GraphGenerator::CheckGeometryID(), and DetermineFilterMode().