SimulatedObjectAsRobot.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 armarx::simulation::scene_generation
17  * @author Patrick Hegemann ( patrick dot hegemann at kit dot edu )
18  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19  * GNU General Public License
20  */
21 
22 #pragma once
23 
24 #include "SimulatedObject.h"
25 
27 {
29  public SimulatedObject
30  {
31  public:
32  SimulatedObjectAsRobot(const std::string& instanceName, const ObjectSource& source);
33 
34  void addToSimulator(armarx::SimulatorInterfacePrx& simulator) override;
35  void updatePoseFromSimulator(armarx::SimulatorInterfacePrx& simulator) override;
36  void updatePoseToSimulator(armarx::SimulatorInterfacePrx& simulator) override;
37 
38  bool checkCollision(const VirtualRobot::CollisionCheckerPtr& col,
39  const VirtualRobot::SceneObjectSetPtr& objectSet) override;
40 
41  std::unique_ptr<Pose> getLocalPose() override;
42  void setLocalPose(const armarx::PosePtr& pose) override;
43 
44  ~SimulatedObjectAsRobot() override = default;
45 
46  private:
47  VirtualRobot::RobotPtr localCopy_;
48  };
49 } // namespace armarx::simulation::scene_generation
armarx::simulation::scene_generation::ObjectSource
Definition: SimulatedObject.h:44
armarx::simulation::scene_generation
Definition: ClutteredSceneGenerator.cpp:48
armarx::simulation::scene_generation::SimulatedObjectAsRobot::setLocalPose
void setLocalPose(const armarx::PosePtr &pose) override
Definition: SimulatedObjectAsRobot.cpp:78
armarx::simulation::scene_generation::SimulatedObjectAsRobot::getLocalPose
std::unique_ptr< Pose > getLocalPose() override
Definition: SimulatedObjectAsRobot.cpp:73
IceInternal::Handle< Pose >
armarx::simulation::scene_generation::SimulatedObjectAsRobot::~SimulatedObjectAsRobot
~SimulatedObjectAsRobot() override=default
armarx::simulation::scene_generation::SimulatedObjectAsRobot::updatePoseToSimulator
void updatePoseToSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsRobot.cpp:56
boost::source
Vertex source(const detail::edge_base< Directed, Vertex > &e, const PCG &)
Definition: point_cloud_graph.h:681
SimulatedObject.h
armarx::simulation::scene_generation::SimulatedObjectAsRobot::updatePoseFromSimulator
void updatePoseFromSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsRobot.cpp:49
armarx::simulation::scene_generation::SimulatedObjectAsRobot::addToSimulator
void addToSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsRobot.cpp:43
armarx::simulation::scene_generation::SimulatedObjectAsRobot::checkCollision
bool checkCollision(const VirtualRobot::CollisionCheckerPtr &col, const VirtualRobot::SceneObjectSetPtr &objectSet) override
Definition: SimulatedObjectAsRobot.cpp:62
armarx::simulation::scene_generation::SimulatedObject
Definition: SimulatedObject.h:57
armarx::simulation::scene_generation::SimulatedObjectAsRobot
Definition: SimulatedObjectAsRobot.h:28
armarx::simulation::scene_generation::SimulatedObjectAsRobot::SimulatedObjectAsRobot
SimulatedObjectAsRobot(const std::string &instanceName, const ObjectSource &source)
Definition: SimulatedObjectAsRobot.cpp:36
VirtualRobot::RobotPtr
std::shared_ptr< class Robot > RobotPtr
Definition: Bus.h:18