Skip to content
Snippets Groups Projects
Commit b90c4ed1 authored by Hoop77's avatar Hoop77
Browse files

-

parent cc45eb3d
Branches
No related merge requests found
......@@ -78,6 +78,8 @@ set(MAIN_NODE_SOURCE_FILES
src/mainNode/mainNode.cpp
include/mainNode/mainNode.h include/mainNode/PlatoonController.h src/mainNode/PlatoonController.cpp)
message(MAIN_NODE_SOURCE_FILES)
find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
......
......@@ -11,6 +11,7 @@ namespace car
class PlatoonController
{
public:
void run();
private:
};
......
......@@ -6,7 +6,8 @@
#include "boost/thread.hpp"
#include "car/environmentDataMsg.h"
#include "NotifiableThread.h"
#include "../../../../../Communication/NetworkingLib/include/Networking.h"
//#include "../../../../../Communication/NetworkingLib/include/Networking.h"
#include "PlatoonController.h"
namespace car
{
......@@ -22,12 +23,25 @@ public:
~MainNode();
private:
std::function<void()> platoonControllerNotify =
[this]
{ platoonControllerThread.notify(); };
NotifiableThread::Callback platoonControllerRun =
[this]
{ platoonController.run(); };
ros::NodeHandle nh;
std::string name;
boost::thread loggerModule;
ros::Publisher logEnabled;
ros::Subscriber environmentData;
//Networking platoonProtocolThread;
NotifiableThread platoonControllerThread;
PlatoonController platoonController;
void environmentDataCallback(const environmentDataMsg::ConstPtr & inMsg);
};
}
......
......@@ -2,3 +2,14 @@
// Created by philipp on 12.02.18.
//
#include "../../include/mainNode/PlatoonController.h"
namespace car
{
void car::PlatoonController::run()
{
// TODO: implementation
}
}
......@@ -16,23 +16,33 @@ PLUGINLIB_EXPORT_CLASS(car::MainNode, nodelet::Nodelet);
namespace car
{
MainNode::MainNode(ros::NodeHandle &nh, std::string &name) : nh(nh), name(name) {}
MainNode::MainNode() {}
MainNode::~MainNode() {}
void MainNode::onInit()
{
NODELET_INFO("MainNode::onInit -- START");
logEnabled = nh.advertise<logEnabledMsg>("logEnabled", 5);
environmentData = nh.subscribe("environmentData", 1, &MainNode::environmentDataCallback, this);
MainNode::MainNode(ros::NodeHandle & nh, std::string & name)
: nh(nh)
, name(name)
, platoonControllerThread(platoonControllerRun)
{}
MainNode::MainNode()
: platoonControllerThread(platoonControllerRun)
{}
MainNode::~MainNode()
{}
void MainNode::onInit()
{
NODELET_INFO("MainNode::onInit -- START");
logEnabled = nh.advertise<logEnabledMsg>("logEnabled", 5);
environmentData = nh.subscribe("environmentData", 1, &MainNode::environmentDataCallback, this);
std::cout << "MainNode &nh: " << &nh << "\n";
// CODE GOES HERE
// CODE GOES HERE
NODELET_INFO("MainNode::onInit -- END");
}
void MainNode::environmentDataCallback(const environmentDataMsg::ConstPtr& inMsg)
{
NODELET_INFO("MainNode::onInit -- END");
}
void MainNode::environmentDataCallback(const environmentDataMsg::ConstPtr & inMsg)
{
std::cout << "MainNode recived new environmentData data (" << inMsg->distance << ", " << inMsg->prevSpeed << ").\n";
}
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment