TinyRobotics
Loading...
Searching...
No Matches
IFrontierExplorer.h
1#pragma once
2#include "TinyRobotics/coordinates/Coordinate.h"
3#include "TinyRobotics/maps/IMap.h"
4#include <cstddef>
5
6namespace tinyrobotics {
7
8/**
9 * @interface IFrontierExplorer
10 * @ingroup planning
11 * @brief Interface for frontier-based exploration utilities.
12 *
13 * Provides a common interface for different frontier exploration strategies.
14 *
15 * @tparam T Scalar type for coordinates and map (e.g., float, DistanceM). Default: DistanceM.
16 */
17template <typename T=DistanceM>
19public:
20 virtual void setCurrentPosition(const Coordinate<T>& pos) = 0;
21 virtual Coordinate<T> getCurrentPosition() const = 0;
22 virtual bool getNextFrontier(Coordinate<T>& nextCell) = 0;
23};
24
25} // namespace tinyrobotics
A generic 3D coordinate class for robotics, navigation, and spatial calculations.
Definition: Coordinate.h:57
Interface for frontier-based exploration utilities.
Definition: IFrontierExplorer.h:18