class mrpt::nav::CMultiObjectiveMotionOptimizerBase
Overview
Virtual base class for multi-objective motion choosers, as used for reactive navigation engines.
See also:
CReactiveNavigationSystem, CReactiveNavigationSystem3D
#include <mrpt/nav/reactive/CMultiObjectiveMotionOptimizerBase.h> class CMultiObjectiveMotionOptimizerBase: public mrpt::rtti::CObject { public: // typedefs typedef std::shared_ptr<CMultiObjectiveMotionOptimizerBase> Ptr; typedef std::shared_ptr<const CMultiObjectiveMotionOptimizerBase> ConstPtr; // structs struct TParamsBase; struct TResultInfo; // methods virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const; static const mrpt::rtti::TRuntimeClassId& GetRuntimeClassIdStatic(); std::optional<size_t> decide(const std::vector<mrpt::nav::TCandidateMovementPTG>& movs, TResultInfo& extra_info); virtual void loadConfigFile(const mrpt::config::CConfigFileBase& c) = 0; virtual void saveConfigFile(mrpt::config::CConfigFileBase& c) const = 0; virtual void clear(); static CMultiObjectiveMotionOptimizerBase::Ptr Factory(const std::string& className); }; // direct descendants class CMultiObjMotionOpt_Scalarization;
Inherited Members
public: // typedefs typedef std::shared_ptr<CObject> Ptr; typedef std::shared_ptr<const CObject> ConstPtr; // methods static const mrpt::rtti::TRuntimeClassId& GetRuntimeClassIdStatic(); virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const;
Methods
virtual const mrpt::rtti::TRuntimeClassId* GetRuntimeClass() const
Returns information about the class of an object in runtime.
std::optional<size_t> decide(const std::vector<mrpt::nav::TCandidateMovementPTG>& movs, TResultInfo& extra_info)
The main entry point for the class: returns the 0-based index of the best of the N motion candidates in movs.
If no valid one is found, std::nullopt will be returned.
virtual void clear()
Resets the object state; use if the parameters change, so they are re-read and applied.
static CMultiObjectiveMotionOptimizerBase::Ptr Factory(const std::string& className)
Class factory from C++ class name.