LookAt.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 2023
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21
22#pragma once
23
25
27
29#include <armarx/view_selection/skills/aron/LookAt.aron.generated.h>
30
32{
33 class LookAt : virtual public armarx::skills::SimpleSpecializedSkill<arondto::LookAtParams>
34 {
35 public:
36 using Params = arondto::LookAtParams;
38
43
44 LookAt(const Context& services);
45
46 private:
47 using Base::init;
48 ::armarx::skills::Skill::InitResult init(const Base::SpecializedInitInput& in) override;
49
50 using Base::main;
51 ::armarx::skills::Skill::MainResult main(const Base::SpecializedMainInput& in) override;
52
53 void onStopRequested() override;
54
55
56 public:
58
59 protected:
60 private:
61 std::optional<Context> srv_;
62
63 // will be initialized in "init()"
64 std::optional<gaze_targets::GazeTarget> gazeTarget;
65 };
66
67} // namespace armarx::view_selection::skills
virtual Skill::MainResult main(const SpecializedMainInput &)
virtual Skill::InitResult init(const SpecializedInitInput &)
LookAt(const Context &services)
Definition LookAt.cpp:12
::armarx::skills::SimpleSpecializedSkill< Params > Base
Definition LookAt.h:37
static armarx::skills::SkillDescription DefaultSkillDescription()
Definition LookAt.cpp:49
arondto::LookAtParams Params
Definition LookAt.h:36
This file is part of ArmarX.
Definition constants.cpp:26
A result struct for skill initialization.
Definition Skill.h:50
A result struct for th main method of a skill.
Definition Skill.h:62
client::ViewSelection & viewSelectionClient
Definition LookAt.h:41