#include "autoware_v2x/dcc_passthrough.hpp" #include #include #include #include #include #include #include "autoware_v2x/time_trigger.hpp" using namespace vanetza; DccPassthrough::DccPassthrough(access::Interface & access, TimeTrigger & trigger) : access_(access), trigger_(trigger) { } void DccPassthrough::request(const dcc::DataRequest & request, std::unique_ptr packet) { if (!allow_packet_flow_) { std::cout << "ignored request because packet flow is suppressed\n"; return; } trigger_.schedule(); access::DataRequest acc_req; acc_req.ether_type = request.ether_type; acc_req.source_addr = request.source; acc_req.destination_addr = request.destination; acc_req.access_category = dcc::map_profile_onto_ac(request.dcc_profile); access_.request(acc_req, std::move(packet)); } void DccPassthrough::allow_packet_flow(bool allow) { allow_packet_flow_ = allow; } bool DccPassthrough::allow_packet_flow() { return allow_packet_flow_; }