|
|
|
|
@ -35,6 +35,7 @@
|
|
|
|
|
|
|
|
|
|
#include "SystemPubSubTypes.hpp"
|
|
|
|
|
#include "msg.hpp"
|
|
|
|
|
#include "DEBUG.hpp"
|
|
|
|
|
|
|
|
|
|
using namespace eprosima::fastdds::dds;
|
|
|
|
|
|
|
|
|
|
@ -219,7 +220,7 @@ void PublisherApp::on_publication_matched(
|
|
|
|
|
std::lock_guard<std::mutex> lock(mutex_);
|
|
|
|
|
matched_ = info.current_count;
|
|
|
|
|
}
|
|
|
|
|
std::cout << writer->get_topic()->get_name() << " Publisher matched." << std::endl;
|
|
|
|
|
DEBUG(writer->get_topic()->get_name() << " Publisher matched.");
|
|
|
|
|
cv_.notify_one();
|
|
|
|
|
}
|
|
|
|
|
else if (info.current_count_change == -1)
|
|
|
|
|
@ -228,12 +229,11 @@ void PublisherApp::on_publication_matched(
|
|
|
|
|
std::lock_guard<std::mutex> lock(mutex_);
|
|
|
|
|
matched_ = info.current_count;
|
|
|
|
|
}
|
|
|
|
|
std::cout << writer->get_topic()->get_name() << " Publisher unmatched." << std::endl;
|
|
|
|
|
DEBUG(writer->get_topic()->get_name() << " Publisher unmatched.");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
std::cout << info.current_count_change
|
|
|
|
|
<< " is not a valid value for PublicationMatchedStatus current count change" << std::endl;
|
|
|
|
|
DEBUG(info.current_count_change << " is not a valid value for PublicationMatchedStatus current count change");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -273,7 +273,7 @@ bool PublisherApp::bar_ctrl(const std::map<std::string, std::string>& ctrl)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::cout << "send bar ctrl cmd" << std::endl;
|
|
|
|
|
DEBUG("send bar ctrl cmd");
|
|
|
|
|
bar_writer_->write(&cmd);
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
@ -311,7 +311,7 @@ bool PublisherApp::light_ctrl(const std::map<std::string, std::string>& ctrl)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::cout << "send light ctrl cmd" << std::endl;
|
|
|
|
|
DEBUG("send light ctrl cmd");
|
|
|
|
|
light_writer_->write(&cmd);
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
@ -325,7 +325,7 @@ bool PublisherApp::print_receipt(const std::map<std::string, std::string>& msg)
|
|
|
|
|
|
|
|
|
|
for (auto &m : req.msg())
|
|
|
|
|
{
|
|
|
|
|
std::cout << "first: " << m.first << " second: " << m.second << std::endl;
|
|
|
|
|
DEBUG("first: " << m.first << " second: " << m.second);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
print_writer_->write(&req);
|
|
|
|
|
@ -350,8 +350,8 @@ void PublisherApp::run()
|
|
|
|
|
DdsMsgData::LicenseSnapUpdate_queue_.pop();
|
|
|
|
|
dds_lock.unlock();
|
|
|
|
|
|
|
|
|
|
std::cout << "车牌: " << info.License() << std::endl;
|
|
|
|
|
std::cout << "类型: " << info.NewTag() << std::endl;
|
|
|
|
|
DEBUG("车牌: " << info.License());
|
|
|
|
|
DEBUG("类型: " << info.NewTag());
|
|
|
|
|
|
|
|
|
|
if (license_no == "")
|
|
|
|
|
{
|
|
|
|
|
@ -364,11 +364,11 @@ void PublisherApp::run()
|
|
|
|
|
DdsMsgData::ScaleInfo_queue_.pop();
|
|
|
|
|
dds_lock.unlock();
|
|
|
|
|
|
|
|
|
|
std::cout << "有车: " << info.HasVehicle() << std::endl;
|
|
|
|
|
std::cout << "稳定: " << info.WeightOK() << std::endl;
|
|
|
|
|
std::cout << "设备状态: " << info.State() << std::endl;
|
|
|
|
|
std::cout << "实时重量: " << info.Value() << std::endl;
|
|
|
|
|
std::cout << "稳定重量: " << info.StableValue() << std::endl;
|
|
|
|
|
DEBUG("有车: " << info.HasVehicle());
|
|
|
|
|
DEBUG("稳定: " << info.WeightOK());
|
|
|
|
|
DEBUG("设备状态: " << info.State());
|
|
|
|
|
DEBUG("实时重量: " << info.Value());
|
|
|
|
|
DEBUG("稳定重量: " << info.StableValue());
|
|
|
|
|
|
|
|
|
|
if (info.WeightOK() == 1)
|
|
|
|
|
{
|
|
|
|
|
@ -391,8 +391,8 @@ void PublisherApp::run()
|
|
|
|
|
DdsMsgData::BarUpdate_queue_.pop();
|
|
|
|
|
dds_lock.unlock();
|
|
|
|
|
|
|
|
|
|
std::cout << "前拦车器状态: " << info.FrontBarState() << std::endl;
|
|
|
|
|
std::cout << "后拦车器状态: " << info.BackBarState() << std::endl;
|
|
|
|
|
DEBUG("前拦车器状态: " << info.FrontBarState());
|
|
|
|
|
DEBUG("后拦车器状态: " << info.BackBarState());
|
|
|
|
|
}
|
|
|
|
|
else if (!DdsMsgData::LightsUpdate_queue_.empty())
|
|
|
|
|
{
|
|
|
|
|
@ -400,8 +400,8 @@ void PublisherApp::run()
|
|
|
|
|
DdsMsgData::LightsUpdate_queue_.pop();
|
|
|
|
|
dds_lock.unlock();
|
|
|
|
|
|
|
|
|
|
std::cout << "前红绿灯状态: " << info.FrontLEDState() << std::endl;
|
|
|
|
|
std::cout << "后红绿灯状态: " << info.BackLEDState() << std::endl;
|
|
|
|
|
DEBUG("前红绿灯状态: " << info.FrontLEDState());
|
|
|
|
|
DEBUG("后红绿灯状态: " << info.BackLEDState());
|
|
|
|
|
}
|
|
|
|
|
else if (!DdsMsgData::InfraredUpdate_queue_.empty())
|
|
|
|
|
{
|
|
|
|
|
@ -409,8 +409,8 @@ void PublisherApp::run()
|
|
|
|
|
DdsMsgData::InfraredUpdate_queue_.pop();
|
|
|
|
|
dds_lock.unlock();
|
|
|
|
|
|
|
|
|
|
std::cout << "前红外对射状态: " << info.FrontResistanceSignal() << std::endl;
|
|
|
|
|
std::cout << "后红外对射状态: " << info.BackResistanceSignal() << std::endl;
|
|
|
|
|
DEBUG("前红外对射状态: " << info.FrontResistanceSignal());
|
|
|
|
|
DEBUG("后红外对射状态: " << info.BackResistanceSignal());
|
|
|
|
|
}
|
|
|
|
|
else if (!DdsMsgData::WeightInfoOk_queue_.empty())
|
|
|
|
|
{
|
|
|
|
|
@ -474,7 +474,7 @@ void PublisherApp::run()
|
|
|
|
|
{
|
|
|
|
|
if ((stable_weight != 0) && (license_no != ""))
|
|
|
|
|
{
|
|
|
|
|
std::cout << "send summary" << std::endl;
|
|
|
|
|
DEBUG("send summary");
|
|
|
|
|
WeighingSystem::SummaryUpdate info;
|
|
|
|
|
info.License() = license_no;
|
|
|
|
|
info.StableValue() = stable_weight;
|
|
|
|
|
|