namespace mrpt::nav

namespace nav {

// typedefs

typedef TMoveTree<TNodeSE2_TP, TMoveEdgeSE2_TP> TMoveTreeSE2_TP;
typedef std::vector<mrpt::nav::CParameterizedTrajectoryGenerator::Ptr> TListPTGPtr;
typedef std::vector<TCPoint> TCPointVector;

// enums

enum PTG_collision_behavior_t;

// structs

template <class node_t>
struct PoseDistanceMetric;

template <>
struct PoseDistanceMetric<TNodeSE2>;

template <>
struct PoseDistanceMetric<TNodeSE2_TP>;

struct RRTAlgorithmParams;
struct RRTEndCriteria;
struct TCPoint;
struct TCandidateMovementPTG;
struct TMoveEdgeSE2_TP;
struct TNodeSE2;
struct TNodeSE2_TP;

template <typename node_pose_t, typename world_limits_t>
struct TPlannerInputTempl;

template <typename tree_t>
struct TPlannerResultTempl;

struct TRobotShape;
struct TWaypoint;
struct TWaypointSequence;
struct TWaypointStatus;
struct TWaypointStatusSequence;
struct TWaypointsRenderingParams;

// classes

class CAbstractHolonomicReactiveMethod;
class CAbstractNavigator;
class CAbstractPTGBasedReactive;
class CHolonomicFullEval;
class CHolonomicLogFileRecord;
class CHolonomicND;
class CHolonomicVFF;
class CLogFileRecord;
class CLogFileRecord_FullEval;
class CLogFileRecord_ND;
class CLogFileRecord_VFF;
class CMultiObjMotionOpt_Scalarization;
class CMultiObjectiveMotionOptimizerBase;
class CNavigatorManualSequence;
class CPTG_DiffDrive_C;
class CPTG_DiffDrive_CC;
class CPTG_DiffDrive_CCS;
class CPTG_DiffDrive_CS;
class CPTG_DiffDrive_CollisionGridBased;
class CPTG_DiffDrive_alpha;
class CPTG_Holo_Blend;
class CPTG_RobotShape_Circular;
class CPTG_RobotShape_Polygonal;
class CParameterizedTrajectoryGenerator;
class CReactiveNavigationSystem;
class CReactiveNavigationSystem3D;
class CRobot2NavInterface;
class CRobot2NavInterfaceForSimulator_DiffDriven;
class CRobot2NavInterfaceForSimulator_Holo;
class CWaypointsNavigator;
class ClearanceDiagram;
class PlannerRRT_SE2_TPS;
class PlannerSimple2D;
class PlannerTPS_VirtualBase;

template <
    class NODE_TYPE_DATA,
    class EDGE_TYPE,
    class MAPS_IMPLEMENTATION = mrpt::containers::map_traits_map_as_vector
    >
class TMoveTree;

// global functions

bool collision_free_dist_segment_circ_robot(
    const mrpt::math::TPoint2D& p_start,
    const mrpt::math::TPoint2D& p_end,
    const double robot_radius,
    const mrpt::math::TPoint2D& obstacle,
    double& out_col_dist
    );

bool collision_free_dist_arc_circ_robot(
    const double arc_radius,
    const double robot_radius,
    const mrpt::math::TPoint2D& obstacle,
    double& out_col_dist
    );

bool operator == (
    const CAbstractNavigator::TNavigationParamsBase& a,
    const CAbstractNavigator::TNavigationParamsBase& b
    );

void registerAllClasses_mrpt_nav();

mrpt::serialization::CArchive& operator << (
    mrpt::serialization::CArchive& o,
    const mrpt::nav::TCPoint& p
    );

mrpt::serialization::CArchive& operator >> (
    mrpt::serialization::CArchive& i,
    mrpt::nav::TCPoint& p
    );

} // namespace nav

Typedefs

typedef std::vector<mrpt::nav::CParameterizedTrajectoryGenerator::Ptr> TListPTGPtr

A list of PTGs (smart pointers)