HandoverTargetProvider.h
Go to the documentation of this file.
1 /**
2  * This file is part of ArmarX.
3  *
4  * ArmarX is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * ArmarX is distributed in the hope that it will be useful, but
9  * WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * @author Fabian Reister ( fabian dot reister at kit dot edu )
17  * @date 2022
18  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19  * GNU General Public License
20  */
21 
22 #pragma once
23 
24 #include <VirtualRobot/VirtualRobot.h>
25 
28 
30 
32 {
33 
35  {
36  public:
37  HandoverTargetProvider(const std::string& humanTrackingId,
38  const VirtualRobot::RobotPtr& robot);
39  virtual ~HandoverTargetProvider() = default;
40 
41 
42  virtual void setPhase(Phase phase);
43 
44  virtual std::vector<gaze_targets::GazeTarget>
45  updateTargets(const armem::human::HumanPose& human) = 0;
46 
47  protected:
48  const std::string humanTrackingId_;
50 
52  };
53 } // namespace armarx::view_selection::target_provider::handover
armarx::view_selection::target_provider::handover::Phase::PreHandover
@ PreHandover
armarx::view_selection::target_provider::handover
This file is part of ArmarX.
Definition: HandoverTargetProvider.cpp:3
armarx::view_selection::target_provider::handover::HandoverTargetProvider
Definition: HandoverTargetProvider.h:34
armarx::view_selection::target_provider::handover::HandoverTargetProvider::setPhase
virtual void setPhase(Phase phase)
Definition: HandoverTargetProvider.cpp:12
armarx::view_selection::target_provider::handover::HandoverTargetProvider::robot_
const VirtualRobot::RobotPtr robot_
Definition: HandoverTargetProvider.h:49
armarx::view_selection::target_provider::handover::HandoverTargetProvider::HandoverTargetProvider
HandoverTargetProvider(const std::string &humanTrackingId, const VirtualRobot::RobotPtr &robot)
Definition: HandoverTargetProvider.cpp:5
types.h
armarx::view_selection::target_provider::handover::HandoverTargetProvider::~HandoverTargetProvider
virtual ~HandoverTargetProvider()=default
armarx::armem::human::HumanPose
Definition: types.h:30
armarx::view_selection::target_provider::handover::HandoverTargetProvider::phase_
Phase phase_
Definition: HandoverTargetProvider.h:51
armarx::view_selection::target_provider::handover::HandoverTargetProvider::updateTargets
virtual std::vector< gaze_targets::GazeTarget > updateTargets(const armem::human::HumanPose &human)=0
armarx::view_selection::target_provider::handover::HandoverTargetProvider::humanTrackingId_
const std::string humanTrackingId_
Definition: HandoverTargetProvider.h:48
GazeTarget.h
armarx::view_selection::target_provider::handover::Phase
Phase
Definition: types.h:27
VirtualRobot::RobotPtr
std::shared_ptr< class Robot > RobotPtr
Definition: Bus.h:19
types.h