Skip to content
Snippets Groups Projects
Select Git revision
  • b8075244648f347f18ecfdd60a389fac41431994
  • main default protected
  • mg2bt
  • Part1
4 results

mg_routine.cpp

Blame
  • mg_routine.cpp 1.16 KiB
    #include <xmlrpcpp/XmlRpc.h>
    
    #include "mediator/mg_mediator.h"
    #include "mediator/abstract_mediator.h"
    #include "robot/decorators/panda_decorator.h"
    
    #include "reader/abstract_param_reader.h"
    #include "reader/robot_reader.h"
    #include "reader/wing_reader.h"
    #include "reader/cuboid_reader.h"
    
    #include "robot/abstract_robot.h"
    #include "robot/decorators/panda_decorator.h"
    #include "robot_element/observers/moveit_panel.h"
    
    
    int main(int argc, char **argv){
        ros::init(argc, argv, "mg_routine");
        std::shared_ptr<ros::NodeHandle> n(new ros::NodeHandle);
    
        ros::AsyncSpinner spinner(4);
        spinner.start();
    
        std::shared_ptr<MGMediator> mediator = std::make_shared<MGMediator>(n);
    
        auto rd = mediator->robotReader()->robotData();
        for (int i = 0; i < rd.size() ;i++){
            std::unique_ptr<AbstractRobot> ceti = std::make_unique<CetiRobot>(rd[i].name_, rd[i].pose_, rd[i].size_);
            std::unique_ptr<PandaDecorator> ceti_panda = std::make_unique<PandaDecorator>(std::move(ceti));
            mediator->connectRobots(std::move(ceti_panda));
        }
    
        //mediator->set_dirname(filename);    
        mediator->mediate();
    
        while (ros::ok()){
            ros::spin();
        }
    }