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