//
// Created by sebastian on 02.11.21.
//

#include <ros/ros.h>
#include <ros/package.h>
#include <std_msgs/Empty.h>

#include "ccf/controller/Controller.h"
#include "ccf/connection/RosConnection.h"
#include "ccf/util/NodeUtil.h"

void receiverCallback(const std::string& msg){
    std::cout << "RECEIVED: " << msg << std::endl;
}

int main(int argc, char **argv) {

    GOOGLE_PROTOBUF_VERIFY_VERSION;

    ros::init(argc, argv, "ros_demo");

    ros::NodeHandle n;

    Controller controller{n};

    std::unique_ptr<RosConnection> connection = std::make_unique<RosConnection>("demo", n);
    connection->setTopic("demo");
   // connection->setHandle(n);
    controller.addConnection(std::move(connection));
    controller.addCallback("demo",receiverCallback);

    ros::spin();

    return 0;
}