#include <abstract_layer.h>
| Public Types | |
| typedef boost::shared_ptr< mesh_map::AbstractLayer > | Ptr | 
| Public Member Functions | |
| virtual bool | computeLayer ()=0 | 
| Function which is called to compute the layer costs. It is called if the layer information could not be loaded or if another layer triggered an update.  More... | |
| virtual lvr2::VertexMap< float > & | costs ()=0 | 
| Returns a vertex map, which associates a cost to each vertex handle. If a vertex handle is not associated with a cost value, i.e. there is no value in the map, the mesh_map will use the default value from threshold().  More... | |
| virtual float | defaultValue ()=0 | 
| Defines the default value for all vertex costs which are not set in the layer.  More... | |
| virtual bool | initialize (const std::string &name)=0 | 
| Initializes the layer plugin with the giben name.  More... | |
| virtual bool | initialize (const std::string &name, const notify_func notify_update, std::shared_ptr< mesh_map::MeshMap > &map, std::shared_ptr< lvr2::HalfEdgeMesh< Vector >> &mesh, std::shared_ptr< lvr2::AttributeMeshIOBase > &io) | 
| Initializes the layer plugin under the mesh_map namespace ans sets some basic attributes.  More... | |
| virtual std::set< lvr2::VertexHandle > & | lethals ()=0 | 
| Returns a set of vertex handles which are associated with "lethal" obstacles.  More... | |
| void | notifyChange () | 
| virtual bool | readLayer ()=0 | 
| reads the layer data, e.g. from a file, or a database  More... | |
| virtual float | threshold ()=0 | 
| Defines the threshold value to consider vertices as a "lethal" obstacle. All vertices with cost values in the layer which a greater than the threshold value are marked as "lethal obstacle".  More... | |
| virtual void | updateLethal (std::set< lvr2::VertexHandle > &added_lethal, std::set< lvr2::VertexHandle > &removed_lethal)=0 | 
| Called by the mesh map if another previously processed layer triggers an update.  More... | |
| virtual lvr2::BaseVector< float > | vectorAt (const lvr2::VertexHandle &vertex) | 
| Optional method if the layer computes vectors. Computes a vector for a given vertex handle.  More... | |
| virtual lvr2::BaseVector< float > | vectorAt (const std::array< lvr2::VertexHandle, 3 > &vertices, const std::array< float, 3 > &barycentric_coords) | 
| Optional method if the layer computes vectors. Computes a vector within a triangle using barycentric coordinates.  More... | |
| virtual const boost::optional< lvr2::VertexMap< lvr2::BaseVector< float > > & > | vectorMap () | 
| Optional vector map. Can be implemented if the layer should also compute vectors. If the implmented layer computes a vector field, this method is used to inject the vector field into the mesh map.  More... | |
| virtual bool | writeLayer ()=0 | 
| Writes the layer data, e.g. to a file, or a database.  More... | |
| Protected Attributes | |
| std::string | layer_name | 
| std::shared_ptr< mesh_map::MeshMap > | map_ptr | 
| std::shared_ptr< lvr2::AttributeMeshIOBase > | mesh_io_ptr | 
| std::shared_ptr< lvr2::HalfEdgeMesh< Vector > > | mesh_ptr | 
| ros::NodeHandle | private_nh | 
| Private Attributes | |
| notify_func | notify | 
Definition at line 56 of file abstract_layer.h.
Definition at line 59 of file abstract_layer.h.
| 
 | pure virtual | 
Function which is called to compute the layer costs. It is called if the layer information could not be loaded or if another layer triggered an update.
| 
 | pure virtual | 
Returns a vertex map, which associates a cost to each vertex handle. If a vertex handle is not associated with a cost value, i.e. there is no value in the map, the mesh_map will use the default value from threshold().
| 
 | pure virtual | 
Defines the default value for all vertex costs which are not set in the layer.
| 
 | pure virtual | 
Initializes the layer plugin with the giben name.
| 
 | inlinevirtual | 
Initializes the layer plugin under the mesh_map namespace ans sets some basic attributes.
Definition at line 156 of file abstract_layer.h.
| 
 | pure virtual | 
Returns a set of vertex handles which are associated with "lethal" obstacles.
| 
 | inline | 
Definition at line 169 of file abstract_layer.h.
| 
 | pure virtual | 
reads the layer data, e.g. from a file, or a database
| 
 | pure virtual | 
Defines the threshold value to consider vertices as a "lethal" obstacle. All vertices with cost values in the layer which a greater than the threshold value are marked as "lethal obstacle".
| 
 | pure virtual | 
Called by the mesh map if another previously processed layer triggers an update.
| added_lethal | The "lethal" obstacle vertex handles which are new with respect to the previous call. | 
| removed_lethal | Old "lethal" obstacle vertex handles, i.e. vertices which are no "lethal" obstacles anymore. | 
| 
 | inlinevirtual | 
Optional method if the layer computes vectors. Computes a vector for a given vertex handle.
Definition at line 143 of file abstract_layer.h.
| 
 | inlinevirtual | 
Optional method if the layer computes vectors. Computes a vector within a triangle using barycentric coordinates.
| vertices | The three triangle vertices. | 
| barycentric_coords | The thee barycentric coordinates. | 
Definition at line 122 of file abstract_layer.h.
| 
 | inlinevirtual | 
Optional vector map. Can be implemented if the layer should also compute vectors. If the implmented layer computes a vector field, this method is used to inject the vector field into the mesh map.
Definition at line 134 of file abstract_layer.h.
| 
 | pure virtual | 
Writes the layer data, e.g. to a file, or a database.
| 
 | protected | 
Definition at line 175 of file abstract_layer.h.
| 
 | protected | 
Definition at line 178 of file abstract_layer.h.
| 
 | protected | 
Definition at line 176 of file abstract_layer.h.
| 
 | protected | 
Definition at line 177 of file abstract_layer.h.
| 
 | private | 
Definition at line 183 of file abstract_layer.h.
| 
 | protected | 
Definition at line 180 of file abstract_layer.h.