|
|
Times the links of a transform chain were evaluated at: the query time (or the latest common time) for an interpolated link, the time of the pose used for a held or non-interpolated link. More...
#include <RobotAPI/libraries/armem_robot_state/common/localization/types.h>
Public Member Functions | |
| armarx::core::time::Duration | spread () const |
| How far apart in time the links of the chain are (newest - oldest). | |
Public Attributes | |
| bool | anyLinkHeld = false |
| True if at least one link was held at its newest pose because the query time lies past it (e.g. | |
| bool | anyLinkInterpolated = false |
| True if at least one link was interpolated between its poses right before and after the evaluation time, i.e. | |
| armarx::core::time::Duration | largestPoseGap = armarx::core::time::Duration() |
| The largest time between the poses right before and after the query time, among the links whose poses around the query time were used (zero if there are none, e.g. | |
| armarx::core::time::DateTime | newest = armarx::core::time::DateTime::Invalid() |
| The time the result is valid for, and its header timestamp: the query time (or the latest common time) if any link was interpolated or matched it exactly, else the time of the newest pose used (e.g. | |
| armarx::core::time::DateTime | oldest = armarx::core::time::DateTime::Invalid() |
Times the links of a transform chain were evaluated at: the query time (or the latest common time) for an interpolated link, the time of the pose used for a held or non-interpolated link.
Static links (TransformHeader::isStatic, and world -> map) are valid at any time and are not included. If all links are static, oldest and newest are the query time (or the latest common time).
|
inline |
How far apart in time the links of the chain are (newest - oldest).
| bool anyLinkHeld = false |
True if at least one link was held at its newest pose because the query time lies past it (e.g.
a slow map -> odom at Clock::Now(); never with TransformTimePolicy::LatestCommonTime). Such a result is provisional: the same query can give a different result once that link's next pose has arrived (it is then interpolated or, without interpolation, may use a newer pose before the query time). False results are final, assuming each link is written in time order. Static links (TransformHeader::isStatic, and world -> map) are valid until replaced and never count as held.
| bool anyLinkInterpolated = false |
True if at least one link was interpolated between its poses right before and after the evaluation time, i.e.
its pose was computed rather than recorded. False if every link used a recorded pose as it is (exact match, held, static, or TransformQuery::interpolate = false).
| armarx::core::time::Duration largestPoseGap = armarx::core::time::Duration() |
The largest time between the poses right before and after the query time, among the links whose poses around the query time were used (zero if there are none, e.g.
at an exact match or when all links are held).
The time the result is valid for, and its header timestamp: the query time (or the latest common time) if any link was interpolated or matched it exactly, else the time of the newest pose used (e.g.
at Clock::Now(), when links are held).