SimulatedObjectAsObject.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 <VirtualRobot/VirtualRobot.h>
25 
26 #include "SimulatedObject.h"
27 
29 {
31  {
32  public:
33  SimulatedObjectAsObject(const std::string& instanceName, const ObjectSource& source);
34 
35  void addToSimulator(armarx::SimulatorInterfacePrx& simulator) override;
36  void updatePoseFromSimulator(armarx::SimulatorInterfacePrx& simulator) override;
37  void updatePoseToSimulator(armarx::SimulatorInterfacePrx& simulator) override;
38 
39  bool checkCollision(const VirtualRobot::CollisionCheckerPtr& col,
40  const VirtualRobot::SceneObjectSetPtr& objectSet) override;
41 
42  std::unique_ptr<Pose> getLocalPose() override;
43  void setLocalPose(const armarx::PosePtr& pose) override;
44 
45  ~SimulatedObjectAsObject() override = default;
46 
47  private:
48  VirtualRobot::ManipulationObjectPtr localCopy_;
49  };
50 } // namespace armarx::simulation::scene_generation
armarx::simulation::scene_generation::SimulatedObjectAsObject::setLocalPose
void setLocalPose(const armarx::PosePtr &pose) override
Definition: SimulatedObjectAsObject.cpp:90
armarx::simulation::scene_generation::ObjectSource
Definition: SimulatedObject.h:44
armarx::simulation::scene_generation
Definition: ClutteredSceneGenerator.cpp:48
armarx::simulation::scene_generation::SimulatedObjectAsObject::getLocalPose
std::unique_ptr< Pose > getLocalPose() override
Definition: SimulatedObjectAsObject.cpp:84
armarx::simulation::scene_generation::SimulatedObjectAsObject::updatePoseFromSimulator
void updatePoseFromSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsObject.cpp:62
IceInternal::Handle< Pose >
armarx::simulation::scene_generation::SimulatedObjectAsObject::~SimulatedObjectAsObject
~SimulatedObjectAsObject() override=default
armarx::simulation::scene_generation::SimulatedObjectAsObject::updatePoseToSimulator
void updatePoseToSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsObject.cpp:70
boost::source
Vertex source(const detail::edge_base< Directed, Vertex > &e, const PCG &)
Definition: point_cloud_graph.h:661
SimulatedObject.h
armarx::simulation::scene_generation::SimulatedObjectAsObject::SimulatedObjectAsObject
SimulatedObjectAsObject(const std::string &instanceName, const ObjectSource &source)
Definition: SimulatedObjectAsObject.cpp:35
armarx::simulation::scene_generation::SimulatedObjectAsObject
Definition: SimulatedObjectAsObject.h:30
armarx::simulation::scene_generation::SimulatedObjectAsObject::addToSimulator
void addToSimulator(armarx::SimulatorInterfacePrx &simulator) override
Definition: SimulatedObjectAsObject.cpp:54
armarx::simulation::scene_generation::SimulatedObject
Definition: SimulatedObject.h:57
armarx::simulation::scene_generation::SimulatedObjectAsObject::checkCollision
bool checkCollision(const VirtualRobot::CollisionCheckerPtr &col, const VirtualRobot::SceneObjectSetPtr &objectSet) override
Definition: SimulatedObjectAsObject.cpp:77