Karlsruhe Institute of Technology (KIT) Logo

Master Motor Map

Whole-body human reference model and tools for unifying representations of whole-body human motion

Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends
MMM::AbstractMotionSegment Class Referenceabstract
Inheritance diagram for MMM::AbstractMotionSegment:
[legend]

Public Member Functions

void addAnnotation (MotionAnnotationPtr annotation)
 
void addAnnotations (AbstractMotionSegmentPtr fromSegment)
 
bool addSegmentation (MotionSegmentationPtr segmentation)
 
void addSegmentations (AbstractMotionSegmentPtr fromSegment, bool deepCopy=true, bool copyAnnotations=true)
 
void addSegmentations (AbstractMotionSegmentPtr fromSegment, float startTimestep, float endTimestep, bool deepCopy=true, bool copyAnnotations=true)
 
void addSegmentObserver (std::weak_ptr< MotionSegmentObserver > observer)
 
void appendSegmentXML (simox::xml::RapidXMLWrapperNodePtr node)
 
std::vector< std::vector< MotionSegmentationPtr > > collectSegmentations ()
 
std::vector< std::vector< MotionSegmentationPtr > > collectSegmentationsReverse ()
 
bool containsSegmentationByConfiguration (MotionSegmentationPtr segmentation)
 
virtual MotionSegmentationPtr createChildSegmentation (const std::string &childSegmentName=std::string())
 
MotionAnnotationList getAllAnnotations () const
 
std::string getAnnotationAsXML (const std::string &nodeName="Annotations")
 
MotionAnnotationList getAnnotations (const std::string &type, const std::string &style=std::string()) const
 
template<typename A , typename std::enable_if< std::is_base_of< MotionAnnotation, A >::value >::type * = nullptr>
std::shared_ptr< A > getDerivedAnnotation (const std::string &style=std::string()) const
 
template<typename A , typename std::enable_if< std::is_base_of< MotionAnnotation, A >::value >::type * = nullptr>
std::vector< std::shared_ptr< A > > getDerivedAnnotations (const std::string &style=std::string()) const
 
virtual float getEndTimestep () const =0
 
float getLength () const
 
MotionRecordingPtr getMotionRecording ()
 
const std::string & getName () const
 
virtual MotionSegmentationPtr getParentSegmentation ()=0
 
MotionSegmentationPtr getSegmentationByConfiguration (MotionSegmentationPtr segmentation)
 
MotionSegmentationList getSegmentations ()
 
virtual float getStartTimestep () const =0
 
void notifyNameChange (MotionPtr motion, const std::string &oldMotionName)
 
bool operator< (AbstractMotionSegmentPtr segment) const
 
bool overlaps (AbstractMotionSegmentPtr other)
 
bool overlaps (float startTimestep, float endTimestep)
 
bool removeAnnotations (const std::string &type=std::string(), const std::string &style=std::string())
 
bool removeSegmentation (MotionSegmentationPtr segmentation)
 
bool removeSegmentObserver (std::weak_ptr< MotionSegmentObserver > observer)
 
void setMotionRecording (MotionRecordingPtr motions)
 
void setName (const std::string &name)
 
virtual void shiftTimesteps (float timestepDelta)
 

Static Public Member Functions

static bool overlaps (float a1, float a2, float b1, float b2)
 

Static Public Attributes

static float MINIMUM_SEGMENT_SIZE = 0.01f
 

Protected Member Functions

 AbstractMotionSegment (const std::string &name=std::string(), MotionRecordingPtr motions=nullptr)
 
void addAnnotations (simox::xml::RapidXMLWrapperNodePtr node)
 
void addSegmentations (simox::xml::RapidXMLWrapperNodePtr node)
 
void notifySegmentResized ()
 
template<typename Derived >
std::shared_ptr< Derived > shared_from_base ()
 

Static Protected Member Functions

static void merge (std::vector< std::vector< MotionSegmentationPtr >> &a, const std::vector< std::vector< MotionSegmentationPtr >> &b)
 

Protected Attributes

MotionAnnotationList annotations
 
MotionSegmentationList childSegmentations
 
MotionRecordingWeakPtr motions
 
std::string name
 
std::vector< std::weak_ptr< MotionSegmentObserver > > observers
 

Friends

class MotionSegmentation
 

Member Function Documentation

◆ getEndTimestep()

virtual float MMM::AbstractMotionSegment::getEndTimestep ( ) const
pure virtual

Returns segment end timestep in seconds

Implemented in MMM::MotionSegment, and MMM::MotionRecordingSegment.

Here is the caller graph for this function:

◆ getLength()

float MMM::AbstractMotionSegment::getLength ( ) const

Returns segment length in seconds

Here is the call graph for this function:

◆ getStartTimestep()

virtual float MMM::AbstractMotionSegment::getStartTimestep ( ) const
pure virtual

Returns segment start timestep in seconds

Implemented in MMM::MotionSegment, and MMM::MotionRecordingSegment.

Here is the caller graph for this function:

The documentation for this class was generated from the following files:
KoroiBot Logo WALK-MAN Logo Xperience Logo SecondHands Logo TimeStorm Logo I-SUPPORT Logo
PACO-PLUS Logo SFB-588 Logo SPP1527 Logo