Whole-body human reference model and tools for unifying representations of whole-body human motion
The templated interface with already implemented methods for implementing new interpolatable sensor classes. More...
#include <InterpolatableSensor.h>
Public Member Functions | |
std::shared_ptr< M > | getDerivedMeasurement (float timestep) |
bool | isInterpolatable () |
void | synchronizeSensorMeasurements (float timeFrequency, float minTimestep, float maxTimestep) |
Synchronizes all possible sensormeasurements on a specific time frequency via linear interpolation. Removes all measurements outside the given intervall. | |
![]() | |
virtual bool | addSensorMeasurement (std::shared_ptr< M > measurement) |
virtual bool | checkModel (ModelPtr model)=0 |
SensorPtr | clone () |
virtual std::shared_ptr< BasicSensor< M > > | cloneConfiguration ()=0 |
std::shared_ptr< BasicSensor< M > > | cloneDerived () |
virtual bool | equalsConfiguration (SensorPtr other)=0 |
void | extend (float minTimestep, float maxTimestep) |
virtual std::shared_ptr< M > | getDerivedMeasurement (float timestep, float delta) |
float | getMaxTimestep () |
SensorMeasurementPtr | getMeasurement (float timestep) |
SensorMeasurementPtr | getMeasurement (float timestep, float delta) |
std::map< float, SensorMeasurementPtr > | getMeasurements () |
float | getMinTimestep () |
SensorPtr | getSegmentSensor (float startTimestep, float endTimestep, bool changeTimestep=false) |
std::vector< float > | getTimesteps () |
bool | hasMeasurement () |
bool | hasMeasurement (float timestep) |
virtual void | shiftMeasurements (float delta) |
![]() | |
void | appendSensorXML (simox::xml::RapidXMLWrapperNodePtr node, const std::filesystem::path &filePath) |
std::string | getDescription () |
std::string | getName () |
virtual int | getPriority () |
virtual std::vector< std::string > | getSensorSpecificInformation (const std::string &name) |
virtual std::string | getType ()=0 |
std::string | getUniqueName () |
virtual std::string | getVersion ()=0 |
virtual bool | hasSensorConfigurationContent () const =0 |
virtual void | initializeModel (ModelPtr model, float timestep, bool extend=false, bool update=false) |
virtual void | initializeModel (ModelPtr model, float timestep, float delta, bool extend=false, bool update=false) |
virtual bool | isMirrorSupported (MotionType type) |
virtual void | mirrorMotionData (const Eigen::Matrix4f &referencePose, int referenceAxis) |
virtual void | scaleMotionData (float scaleFactor) |
void | setDescription (const std::string &description) |
void | setName (const std::string &name) |
void | setUniqueName (const std::string &uniqueName) |
virtual void | shiftMotionData (const Eigen::Vector3f &positionDelta) |
void | synchronizeSensorMeasurements (float timeFrequency) |
Synchronizes all possible sensormeasurements on a specific time frequency via linear interpolation. | |
Protected Member Functions | |
InterpolatableSensor (const std::string &description=std::string(), const std::map< float, std::shared_ptr< M > > &measurements=std::map< float, std::shared_ptr< M > >()) | |
![]() | |
virtual void | appendDataXML (simox::xml::RapidXMLWrapperNodePtr node) override |
BasicSensor (const std::string &description=std::string(), const std::map< float, std::shared_ptr< M > > &measurements=std::map< float, std::shared_ptr< M > >()) | |
SensorPtr | joinSensor (SensorPtr sensor) |
virtual void | loadMeasurementNodeXML (simox::xml::RapidXMLWrapperNodePtr node) override |
virtual void | loadMeasurementXML (simox::xml::RapidXMLWrapperNodePtr node, float timestep, SensorMeasurementType type)=0 |
![]() | |
virtual void | appendConfigurationXML (simox::xml::RapidXMLWrapperNodePtr node, const std::filesystem::path &filePath)=0 |
virtual void | appendTypeXML (simox::xml::RapidXMLWrapperNodePtr node) |
virtual void | loadConfigurationXML (simox::xml::RapidXMLWrapperNodePtr node, const std::filesystem::path &filePath)=0 |
virtual void | loadSensor (simox::xml::RapidXMLWrapperNodePtr node, const std::filesystem::path &filePath) |
Sensor (const std::string &description="") | |
Additional Inherited Members | |
![]() | |
static SensorPtr | join (SensorPtr sensor1, SensorPtr sensor2) |
![]() | |
static std::function< bool(std::filesystem::path &)> | handleSensorFilePath = NULL |
![]() | |
std::map< float, std::shared_ptr< M > > | measurements |
![]() | |
std::string | description |
std::string | name |
std::string | uniqueName |
The templated interface with already implemented methods for implementing new interpolatable sensor classes.
|
inlinevirtual |
Returns true if the sensor measurements are interpolatable
Reimplemented from MMM::Sensor.