Core: The core component provides the basic infrastructure that is used by all other components. This includes a C runtime/host interface, a test harness, and a visualization framework.
Geometry: The geometry component provides basic data structures and operations for manipulating geometric quantities such as points, vectors, and coordinate systems. These are fundamental elements which are used to build most other components. For example, Points structs are necessary to represent position information in the geodesy component, and RigidTransforms are needed to represent the conversion between coordinate systems.
Mapping: The mapping component provides data structures for generating dense rectangular maps, with information stored in each map cell, and algorithms for populating maps from other data structures (e.g. converting a tagged point cloud into an occupancy grid).
Positioning: The positioning component provides data structures for representing position information, routines for converting between different representations (LLA, ECEF, etc.), and drivers for interacting with INS/IMU systems.
Lidar: The lidar component provides data structures for storing LiDAR-specific metadata, algorithms for common LiDAR processing tasks, and a driver for Velodyne LiDARs.