struct mrpt::maps::internal::TMetricMapTypesRegistry
Class factory & registry for map classes.
Used from mrpt::maps::TMetricMapInitializer
#include <mrpt/maps/TMetricMapTypesRegistry.h> struct TMetricMapTypesRegistry { // typedefs typedef std::map<std::string, InfoPerMapClass> TListRegisteredMaps; // structs struct InfoPerMapClass; // methods static TMetricMapTypesRegistry& Instance(); size_t doRegister(const std::string& name, MapDefCtorFunctor func1, MapCtorFromDefFunctor func2); std::shared_ptr<mrpt::maps::TMetricMapInitializer> factoryMapDefinition(const std::string& className) const; std::shared_ptr<mrpt::maps::CMetricMap> factoryMapObjectFromDefinition(const mrpt::maps::TMetricMapInitializer& mi) const; const TListRegisteredMaps& getAllRegistered() const; };
Methods
size_t doRegister(const std::string& name, MapDefCtorFunctor func1, MapCtorFromDefFunctor func2)
Return the index of the class in the list (not important, just used as a trick to initialize static members)
std::shared_ptr<mrpt::maps::TMetricMapInitializer> factoryMapDefinition(const std::string& className) const
Return nullptr if not found.
std::shared_ptr<mrpt::maps::CMetricMap> factoryMapObjectFromDefinition(const mrpt::maps::TMetricMapInitializer& mi) const
Return nullptr if not found.