10#include <armarx/view_selection/gaze_controller/ice/GazeControllerStatus.h>
31 void update(std::int64_t targetId,
const GazeResidual& residual,
bool targetReachable);
34 void setTarget(std::int64_t targetId,
const std::string& targetName);
41 void report(
const GazeControllerStatusListenerPrx&
topic);
44 std::atomic<std::int64_t> targetId = -1;
46 std::atomic<float> angularError = 0.F;
48 std::atomic<float> lateralError = 0.F;
50 std::atomic<bool> targetReachable =
true;
52 std::mutex targetNameMutex;
54 std::int64_t targetNameId = -1;
56 std::string targetName;
static DateTime Invalid()
Represents a point in time.
Collects the gaze residual on the control side and reports it on a topic.
void report(const GazeControllerStatusListenerPrx &topic)
Publishes the current residual, rate limited.
void update(std::int64_t targetId, const GazeResidual &residual, bool targetReachable)
Called from the control side, at whatever rate it computes the residual.
void setTarget(std::int64_t targetId, const std::string &targetName)
Called from updateConfig(), so a report can name the target it is about.
How far the gaze currently is from a target.