robot_base_calculation_approach.cpp
Go to the documentation of this file.
1 #include <xmlrpcpp/XmlRpc.h>
2 
3 #include <filesystem>
4 
6 #include "reader/robot_reader.h"
7 #include "reader/wing_reader.h"
8 #include "bridge/abstract_base.h"
10 #include "bridge/simple_base.h"
12 #include "robot/abstract_robot.h"
13 #include "robot/ceti_robot.h"
23 
24 
25 int main(int argc, char **argv){
26  ros::init(argc, argv, "robot_base_calculation_apprioach");
27  std::shared_ptr<ros::NodeHandle> n(new ros::NodeHandle);
28 
29  std::shared_ptr<AbstractBase> simple_base = std::make_shared<SimpleBase>(n);
30  std::shared_ptr<AbstractBaseImplementation> simple_base_implementation = std::make_shared<SimpleBaseImplementation>();
31  std::shared_ptr<BaseCalculationMediator> mediator = std::make_shared<BaseCalculationMediator>(n);
32 
33  simple_base->setImplementation(simple_base_implementation);
34 
35  simple_base->baseCalculation();
36 
37  auto rd = mediator->robotReader()->robotData();
38  for (int i = 0; i < rd.size() ;i++){
39  std::unique_ptr<AbstractRobot> ceti = std::make_unique<CetiRobot>(rd[i].name_, rd[i].pose_, rd[i].size_);
40  std::unique_ptr<PandaDecorator> ceti_panda = std::make_unique<PandaDecorator>(std::move(ceti));
41  mediator->connectRobots(std::move(ceti_panda));
42  }
43 
44  mediator->setResultVector(simple_base->result());
45  //mediator->set_dirname(filename);
46 
47  mediator->setPanel();
48 
49  mediator->mediate();
50  return 0;
51 }
abstract_mediator.h
log_decorator.h
abstract_robot_decorator.h
abstract_param_reader.h
abstract_base.h
abstract_robot.h
ceti_robot.h
base_calculation_mediator.h
main
int main(int argc, char **argv)
Definition: robot_base_calculation_approach.cpp:25
rviz_panel.h
wing_reader.h
robot_reader.h
abstract_robot_element_decorator.h
simple_base.h
panda_decorator.h
panel.h
abstract_robot_element.h
simple_base_implementation.h
abstract_base_implementation.h


multi_cell_builder
Author(s): Matteo Anedda
autogenerated on Sun Apr 9 2023 23:59:51