17 using namespace mvsim;
21 MRPT_TODO(
"When each wheel will have its own friction - remove m_logger.")
27 static bool done =
false;
38 : m_world(my_vehicle.getWorldObject()), m_my_vehicle(my_vehicle)
51 if (!xml_node || 0 != strcmp(xml_node->
name(),
"friction"))
53 "[FrictionBase::factory] Expected XML node <friction>");
57 if (!frict_class || !frict_class->
value())
59 "[FrictionBase::factory] Missing mandatory attribute 'class' in "
This file contains rapidxml parser and DOM implementation.
std::shared_ptr< FrictionBase > Ptr
std::weak_ptr< CSVLogger > m_logger
MRPT_TODO("Modify ping to run on Windows + Test this")
FrictionBase(VehicleBase &my_vehicle)
TClassFactory_friction classFactory_friction
#define REGISTER_FRICTION(TEXTUAL_NAME, CLASS_NAME)
xml_attribute< Ch > * first_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
Ptr create(const std::string &class_name, ARG1 a1) const
void setLogger(const std::weak_ptr< CSVLogger > &logger)
static FrictionBase::Ptr factory(VehicleBase &parent, const rapidxml::xml_node< char > *xml_node)
void register_all_friction()