StatusHandlerInterface.h
Go to the documentation of this file.
1#pragma once
2
3#include <functional>
4
6
8{
9
10 /**
11 * @brief Registration of callbacks for gaze target lifecycle updates.
12 *
13 * Modelled on navigation's client::EventSubscriptionInterface, collapsed into one callback
14 * signature because every update is the same object -- only its `status` differs.
15 */
17 {
18 public:
19 using Callback = std::function<void(const gaze_targets::GazeTargetStatus&)>;
20
21 virtual ~StatusHandlerInterface() = default;
22
23 virtual void onRequested(const Callback& callback) = 0;
24 virtual void onScheduled(const Callback& callback) = 0;
25 virtual void onReached(const Callback& callback) = 0;
26 virtual void onPreempted(const Callback& callback) = 0;
27 virtual void onReleased(const Callback& callback) = 0;
28 virtual void onAborted(const Callback& callback) = 0;
29
30 /// Called for every update, whatever its status.
31 virtual void onAny(const Callback& callback) = 0;
32 };
33
34} // namespace armarx::view_selection::client
Registration of callbacks for gaze target lifecycle updates.
virtual void onReleased(const Callback &callback)=0
virtual void onAny(const Callback &callback)=0
Called for every update, whatever its status.
virtual void onAborted(const Callback &callback)=0
virtual void onRequested(const Callback &callback)=0
virtual void onScheduled(const Callback &callback)=0
std::function< void(const gaze_targets::GazeTargetStatus &)> Callback
virtual void onPreempted(const Callback &callback)=0
virtual void onReached(const Callback &callback)=0
Business Object (BO) class of GazeTargetStatus: the lifecycle of one gaze target request,...