ScanLocation.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
26
27#include <RobotAPI/interface/core/RobotState.h>
28#include <RobotAPI/interface/speech/SpeechInterface.h>
29#include <RobotAPI/interface/units/KinematicUnitInterface.h>
32
34#include <armarx/view_selection/skills/aron/ScanLocation.aron.generated.h>
35
37{
39 virtual public armarx::skills::SimpleSpecializedSkill<arondto::ScanLocationParams>
40 {
41 public:
42 using Params = arondto::ScanLocationParams;
44
45 struct Services
46 {
48
49 // objpose::ObjectPoseClient objectPoseClient;
50
51 // armarx::TextListenerInterfacePrx textToSpeech;
52
53 // armarx::RobotStateComponentInterfacePrx robotStateComponent;
54
55 // armem::client::MemoryNameSystem& memoryNameSystem;
56 };
57
58 ScanLocation(const Services& srv);
59
61 MakeGazeTarget(const Eigen::Vector3f& position,
62 const arondto::ScanLocationParams& parameters);
63 static std::vector<Eigen::Vector3f>
64 MakeGazeTargetPositions(const arondto::ScanLocationParams& parameters);
65
66 private:
67 using Base::init;
68 ::armarx::skills::Skill::InitResult init(const Base::SpecializedInitInput& in) override;
69 using Base::main;
70 ::armarx::skills::Skill::MainResult main(const Base::SpecializedMainInput& in) override;
71
72 void onStopRequested() override;
73
74 public:
76
77 private:
78 const Services srv_;
79
80 // will be initialized in "init()"
81 };
82
83} // namespace armarx::view_selection::skills
virtual Skill::MainResult main(const SpecializedMainInput &)
virtual Skill::InitResult init(const SpecializedInitInput &)
armarx::aron::data::DictPtr parameters
Definition Skill.h:369
Business Object (BO) class of GazeTarget.
Definition GazeTarget.h:23
static gaze_targets::GazeTarget MakeGazeTarget(const Eigen::Vector3f &position, const arondto::ScanLocationParams &parameters)
::armarx::skills::SimpleSpecializedSkill< Params > Base
static std::vector< Eigen::Vector3f > MakeGazeTargetPositions(const arondto::ScanLocationParams &parameters)
static armarx::skills::SkillDescription DefaultSkillDescription()
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