Autoware.Auto
autoware::localization::ndt::StaticNDTMap Class Reference

#include <ndt_map.hpp>

Inheritance diagram for autoware::localization::ndt::StaticNDTMap:
Collaboration diagram for autoware::localization::ndt::StaticNDTMap:

Public Types

using Voxel = StaticNDTVoxel
 
- Public Types inherited from autoware::localization::ndt::NDTMapBase< StaticNDTMap, StaticNDTVoxel >
using Grid = std::unordered_map< uint64_t, StaticNDTVoxel >
 
using Point = Eigen::Vector3d
 
using Config = autoware::perception::filters::voxel_grid::Config
 
using TimePoint = std::chrono::system_clock::time_point
 
using VoxelViewVector = std::vector< VoxelView< StaticNDTVoxel > >
 

Public Member Functions

void insert_ (const sensor_msgs::msg::PointCloud2 &msg)
 
 NDTMapBase (const Config &voxel_grid_config)
 
 NDTMapBase (const NDTMapBase &)=delete
 
 NDTMapBase (NDTMapBase &&)=default
 
- Public Member Functions inherited from autoware::localization::ndt::NDTMapBase< StaticNDTMap, StaticNDTVoxel >
 NDTMapBase (const Config &voxel_grid_config)
 
 NDTMapBase (const NDTMapBase &)=delete
 
 NDTMapBase (NDTMapBase &&)=default
 
NDTMapBaseoperator= (const NDTMapBase &)=delete
 
NDTMapBaseoperator= (NDTMapBase &&)=default
 
const VoxelViewVectorcell (float32_t x, float32_t y, float32_t z) const
 
const VoxelViewVectorcell (const Point &pt) const
 
void insert (const sensor_msgs::msg::PointCloud2 &msg)
 
uint64_t size () const noexcept
 
auto cell_size () const noexcept
 
Grid::const_iterator begin () const noexcept
 Returns an const iterator to the first element of the map. More...
 
Grid::iterator begin () noexcept
 Returns an iterator to the first element of the map. More...
 
Grid::const_iterator cbegin () const noexcept
 Returns a const iterator to the first element of the map. More...
 
Grid::const_iterator end () const noexcept
 Returns a const iterator to one past the last element of the map. More...
 
Grid::iterator end () noexcept
 Returns an iterator to one past the last element of the map. More...
 
Grid::const_iterator cend () const noexcept
 Returns a const iterator to one past the last element of the map. More...
 
void clear () noexcept
 Clear all voxels in the map. More...
 
TimePoint stamp () const noexcept
 
const std::string & frame_id () const noexcept
 

Additional Inherited Members

- Protected Member Functions inherited from autoware::localization::ndt::NDTMapBase< StaticNDTMap, StaticNDTVoxel >
auto index (const Point &pt) const
 
StaticNDTVoxelvoxel (uint64_t idx)
 
auto emplace (uint64_t key, const StaticNDTVoxel &&vx)
 
- Protected Member Functions inherited from autoware::common::helper_functions::crtp< StaticNDTMap >
const StaticNDTMap & impl () const
 
StaticNDTMap & impl ()
 

Detailed Description

NDT map using StaticNDTVoxels. This class is to be used when the pointcloud messages to be inserted already have the correct format (see validate_pcl_map(...)) and represent a transformed map. No centroid/covariance computation is done during run-time.

Member Typedef Documentation

◆ Voxel

Member Function Documentation

◆ insert_()

void autoware::localization::ndt::StaticNDTMap::insert_ ( const sensor_msgs::msg::PointCloud2 &  msg)
inline

Insert point cloud message representing the map to the map representation instance. Map is assumed to have correct format (see validate_pcl_map(...)) and was generated by a dense map representation with identical configuration to this representation.

Parameters
msgPointCloud2 message to add. Each point in this cloud should correspond to a single voxel in the underlying voxel grid. This is checked via the cell_id field in the pcl message which is expected to be equal to the voxel grid ID in the map's voxel grid. Since the grid's index will be a long value to avoid overflows, cell_id field should be an array of 2 unsigned integers. That is because there is no direct long support as a PointField.

◆ NDTMapBase() [1/3]

autoware::localization::ndt::NDTMapBase< Derived, VoxelT >::NDTMapBase
inlineexplicit

Constructor

Parameters
voxel_grid_configVoxel grid config to configure the underlying voxel grid.

◆ NDTMapBase() [2/3]

◆ NDTMapBase() [3/3]


The documentation for this class was generated from the following file: