Impl.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  * @package RobotAPI::ArmarXObjects::RobotStatePredictionClientExample
17  * @author Rainer Kartmann ( rainer dot kartmann at kit dot edu )
18  * @date 2022
19  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20  * GNU General Public License
21  */
22 
23 
24 #pragma once
25 
26 #include <vector>
27 
28 #include <ArmarXCore/util/tasks.h>
29 
34 
36 
38 {
39 
40  class Impl
41  {
42  public:
43  Impl();
44  ~Impl();
45 
46 
48  const std::string& prefix);
50 
51  void start();
52  void stop();
53 
54  void run();
55  void runOnce();
56 
57 
58  public:
59  struct Properties
60  {
61  float updateFrequencyHz = 10;
62 
63  std::string robotName = "Armar6";
64  float predictAheadSeconds = 1.0;
65  };
66 
68 
69  struct Remote
70  {
72  };
73 
75 
77 
78 
80 
81  std::optional<std::vector<armem::MemoryID>> localizationEntityIDs;
82  std::optional<std::vector<armem::MemoryID>> propioceptionEntityIDs;
83  std::optional<viz::Robot> robotViz;
84  };
85 } // namespace armarx::robot_state_prediction_client_example
Client.h
Reader.h
armarx::robot_state_prediction_client_example::Impl::localizationEntityIDs
std::optional< std::vector< armem::MemoryID > > localizationEntityIDs
Definition: Impl.h:81
armarx::robot_state_prediction_client_example::Impl::start
void start()
Definition: Impl.cpp:151
armarx::robot_state_prediction_client_example::Impl::propioceptionEntityIDs
std::optional< std::vector< armem::MemoryID > > propioceptionEntityIDs
Definition: Impl.h:82
armarx::robot_state_prediction_client_example::Impl::run
void run()
Definition: Impl.cpp:164
armarx::robot_state_prediction_client_example::Impl::Impl
Impl()
Definition: Impl.cpp:111
forward_declarations.h
armarx::robot_state_prediction_client_example::Impl::Remote::arviz
viz::Client arviz
Definition: Impl.h:71
RobotStatePredictionClient.h
armarx::robot_state_prediction_client_example::Impl::Properties::robotName
std::string robotName
Definition: Impl.h:63
armarx::robot_state_prediction_client_example::Impl::remote
Remote remote
Definition: Impl.h:74
armarx::robot_state_prediction_client_example::Impl::client
armem::robot_state::RobotStatePredictionClient client
Definition: Impl.h:79
armarx::robot_state_prediction_client_example::Impl::robotViz
std::optional< viz::Robot > robotViz
Definition: Impl.h:83
forward_declarations.h
armarx::robot_state_prediction_client_example::Impl::Properties
Definition: Impl.h:59
armarx::armem::robot_state::RobotStatePredictionClient
Definition: RobotStatePredictionClient.h:39
armarx::robot_state_prediction_client_example::Impl::task
armarx::SimpleRunningTask ::pointer_type task
Definition: Impl.h:76
armarx::robot_state_prediction_client_example::Impl::defineProperties
void defineProperties(IceUtil::Handle< armarx::PropertyDefinitionContainer > &defs, const std::string &prefix)
Definition: Impl.cpp:119
armarx::robot_state_prediction_client_example::Impl::runOnce
void runOnce()
Definition: Impl.cpp:177
tasks.h
armarx::robot_state_prediction_client_example
Definition: Component.cpp:29
armarx::robot_state_prediction_client_example::Impl
Definition: Impl.h:40
IceUtil::Handle
Definition: forward_declarations.h:29
armarx::robot_state_prediction_client_example::Impl::~Impl
~Impl()
armarx::armem::client::MemoryNameSystem
The memory name system (MNS) client.
Definition: MemoryNameSystem.h:69
armarx::robot_state_prediction_client_example::Impl::Properties::predictAheadSeconds
float predictAheadSeconds
Definition: Impl.h:64
armarx::robot_state_prediction_client_example::Impl::properties
Properties properties
Definition: Impl.h:67
armarx::robot_state_prediction_client_example::Impl::Remote
Definition: Impl.h:69
armarx::viz::Client
Definition: Client.h:109
armarx::robot_state_prediction_client_example::Impl::stop
void stop()
Definition: Impl.cpp:158
armarx::robot_state_prediction_client_example::Impl::Properties::updateFrequencyHz
float updateFrequencyHz
Definition: Impl.h:61
armarx::robot_state_prediction_client_example::Impl::connect
void connect(armem::client::MemoryNameSystem &mns, viz::Client arviz)
Definition: Impl.cpp:132