Loading ccsrc/Framework/Layer.hh +2 −0 Original line number Diff line number Diff line Loading @@ -9,7 +9,9 @@ #include "loggers.hh" class OCTETSTRING; class BITSTRING; class CHARSTRING; class INTEGER; class Layer { std::vector<Layer*> upperLayers; Loading ccsrc/Framework/Params.hh +7 −0 Original line number Diff line number Diff line #pragma once #include <vector> #include <map> class Params : public std::map<std::string, std::string> { public: static const std::string& mac_src; static const std::string& mac_dst; static const std::string& ssp; static const std::string& its_aid; static const std::vector<unsigned char>& mac_address; Params() : std::map<std::string, std::string>() {}; Params(const Params& p_params) : std::map<std::string, std::string>(p_params.begin(), p_params.end()) {}; Loading ccsrc/Framework/src/Params.cc +6 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,12 @@ #include "Params.hh" #include "loggers.hh" const std::string& Params::mac_src = std::string("mac_src"); const std::string& Params::mac_dst = std::string("mac_dst"); const std::string& Params::its_aid = std::string("its_aid"); const std::string& Params::ssp = std::string("ssp"); const std::vector<unsigned char>& Params::mac_address({0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}); void Params::convert(Params& p_param, const std::string p_parameters) { //loggers::get_instance().log(">>> Params::convert: '%s'", p_parameters.c_str()); // Sanity checks Loading ccsrc/Ports/LibIts_ports/BTP_ports/BtpPort.cc +56 −33 Original line number Diff line number Diff line Loading @@ -8,21 +8,26 @@ // add your member functions here. #include "BtpPort.hh" #include "BTPLayer.hh" #include "loggers.hh" namespace LibItsBtp__TestSystem { BtpPort::BtpPort(const char *par_port_name) : BtpPort_BASE(par_port_name) { BtpPort_BASE(par_port_name), _cfg_params(), _layer_params(), _layer(NULL), _time_key("BtpPort::outgoing_send") { } BtpPort::~BtpPort() { if (_layer != NULL) { delete _layer; } void BtpPort::set_parameter(const char * /*parameter_name*/, const char * /*parameter_value*/) { } void BtpPort::set_parameter(const char * parameter_name, const char * parameter_value) { loggers::get_instance().log("BtpPort::set_parameter: %s=%s", parameter_name, parameter_value); _cfg_params.insert(std::pair<std::string, std::string>(std::string(parameter_name), std::string(parameter_value))); } /*void BtpPort::Handle_Fd_Event(int fd, boolean is_readable, Loading @@ -42,12 +47,23 @@ void BtpPort::Handle_Fd_Event_Readable(int /*fd*/) { /*void BtpPort::Handle_Timeout(double time_since_last_call) {}*/ void BtpPort::user_map(const char * /*system_port*/) { void BtpPort::user_map(const char * system_port) { loggers::get_instance().log(">>> BtpPort::user_map: %s", system_port); // Build layer stack std::map<std::string, std::string>::iterator it = _cfg_params.find(std::string("params")); if (it != _cfg_params.end()) { //loggers::get_instance().log("BtpPort::user_map: %s", it->second.c_str()); _layer = LayerStackBuilder::GetInstance()->createLayerStack(it->second.c_str()); dynamic_cast<BTPLayer *>(_layer)->addUpperPort(this); } } void BtpPort::user_unmap(const char * /*system_port*/) { void BtpPort::user_unmap(const char * system_port) { loggers::get_instance().log(">>> BtpPort::user_unmap: %s", system_port); if (_layer != NULL) { delete _layer; _layer = NULL; } } void BtpPort::user_start() { Loading @@ -58,12 +74,19 @@ void BtpPort::user_stop() { } void BtpPort::outgoing_send(const BtpReq& /*send_par*/) { void BtpPort::outgoing_send(const BtpReq& send_par) { loggers::get_instance().log_msg(">>> BtpPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); dynamic_cast<BTPLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void BtpPort::receiveMsg(const LibItsBtp__TypesAndValues::BtpPacket&, const Params&) { void BtpPort::receiveMsg(const LibItsBtp__TestSystem::BtpInd& p_ind, const Params& p_params) { loggers::get_instance().log_msg(">>> BtpPort::receive_msg: ", p_ind); incoming_message(p_ind); } } /* end of namespace */ Loading ccsrc/Ports/LibIts_ports/BTP_ports/BtpPort.hh +32 −28 Original line number Diff line number Diff line Loading @@ -12,12 +12,16 @@ #include "LibItsBtp_TestSystem.hh" #include "BTPLayer.hh" #include "Layer.hh" #include "Params.hh" namespace LibItsBtp__TestSystem { class BtpPort : public BtpPort_BASE { BTPLayer * layer; Params _cfg_params; Params _layer_params; Layer * _layer; std::string _time_key; public: BtpPort(const char *par_port_name = NULL); ~BtpPort(); Loading @@ -25,7 +29,7 @@ public: void set_parameter(const char *parameter_name, const char *parameter_value); void receiveMsg (const LibItsBtp__TypesAndValues::BtpPacket&, const Params&); void receiveMsg (const LibItsBtp__TestSystem::BtpInd&, const Params&); private: /* void Handle_Fd_Event(int fd, boolean is_readable, Loading Loading
ccsrc/Framework/Layer.hh +2 −0 Original line number Diff line number Diff line Loading @@ -9,7 +9,9 @@ #include "loggers.hh" class OCTETSTRING; class BITSTRING; class CHARSTRING; class INTEGER; class Layer { std::vector<Layer*> upperLayers; Loading
ccsrc/Framework/Params.hh +7 −0 Original line number Diff line number Diff line #pragma once #include <vector> #include <map> class Params : public std::map<std::string, std::string> { public: static const std::string& mac_src; static const std::string& mac_dst; static const std::string& ssp; static const std::string& its_aid; static const std::vector<unsigned char>& mac_address; Params() : std::map<std::string, std::string>() {}; Params(const Params& p_params) : std::map<std::string, std::string>(p_params.begin(), p_params.end()) {}; Loading
ccsrc/Framework/src/Params.cc +6 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,12 @@ #include "Params.hh" #include "loggers.hh" const std::string& Params::mac_src = std::string("mac_src"); const std::string& Params::mac_dst = std::string("mac_dst"); const std::string& Params::its_aid = std::string("its_aid"); const std::string& Params::ssp = std::string("ssp"); const std::vector<unsigned char>& Params::mac_address({0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}); void Params::convert(Params& p_param, const std::string p_parameters) { //loggers::get_instance().log(">>> Params::convert: '%s'", p_parameters.c_str()); // Sanity checks Loading
ccsrc/Ports/LibIts_ports/BTP_ports/BtpPort.cc +56 −33 Original line number Diff line number Diff line Loading @@ -8,21 +8,26 @@ // add your member functions here. #include "BtpPort.hh" #include "BTPLayer.hh" #include "loggers.hh" namespace LibItsBtp__TestSystem { BtpPort::BtpPort(const char *par_port_name) : BtpPort_BASE(par_port_name) { BtpPort_BASE(par_port_name), _cfg_params(), _layer_params(), _layer(NULL), _time_key("BtpPort::outgoing_send") { } BtpPort::~BtpPort() { if (_layer != NULL) { delete _layer; } void BtpPort::set_parameter(const char * /*parameter_name*/, const char * /*parameter_value*/) { } void BtpPort::set_parameter(const char * parameter_name, const char * parameter_value) { loggers::get_instance().log("BtpPort::set_parameter: %s=%s", parameter_name, parameter_value); _cfg_params.insert(std::pair<std::string, std::string>(std::string(parameter_name), std::string(parameter_value))); } /*void BtpPort::Handle_Fd_Event(int fd, boolean is_readable, Loading @@ -42,12 +47,23 @@ void BtpPort::Handle_Fd_Event_Readable(int /*fd*/) { /*void BtpPort::Handle_Timeout(double time_since_last_call) {}*/ void BtpPort::user_map(const char * /*system_port*/) { void BtpPort::user_map(const char * system_port) { loggers::get_instance().log(">>> BtpPort::user_map: %s", system_port); // Build layer stack std::map<std::string, std::string>::iterator it = _cfg_params.find(std::string("params")); if (it != _cfg_params.end()) { //loggers::get_instance().log("BtpPort::user_map: %s", it->second.c_str()); _layer = LayerStackBuilder::GetInstance()->createLayerStack(it->second.c_str()); dynamic_cast<BTPLayer *>(_layer)->addUpperPort(this); } } void BtpPort::user_unmap(const char * /*system_port*/) { void BtpPort::user_unmap(const char * system_port) { loggers::get_instance().log(">>> BtpPort::user_unmap: %s", system_port); if (_layer != NULL) { delete _layer; _layer = NULL; } } void BtpPort::user_start() { Loading @@ -58,12 +74,19 @@ void BtpPort::user_stop() { } void BtpPort::outgoing_send(const BtpReq& /*send_par*/) { void BtpPort::outgoing_send(const BtpReq& send_par) { loggers::get_instance().log_msg(">>> BtpPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); dynamic_cast<BTPLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void BtpPort::receiveMsg(const LibItsBtp__TypesAndValues::BtpPacket&, const Params&) { void BtpPort::receiveMsg(const LibItsBtp__TestSystem::BtpInd& p_ind, const Params& p_params) { loggers::get_instance().log_msg(">>> BtpPort::receive_msg: ", p_ind); incoming_message(p_ind); } } /* end of namespace */ Loading
ccsrc/Ports/LibIts_ports/BTP_ports/BtpPort.hh +32 −28 Original line number Diff line number Diff line Loading @@ -12,12 +12,16 @@ #include "LibItsBtp_TestSystem.hh" #include "BTPLayer.hh" #include "Layer.hh" #include "Params.hh" namespace LibItsBtp__TestSystem { class BtpPort : public BtpPort_BASE { BTPLayer * layer; Params _cfg_params; Params _layer_params; Layer * _layer; std::string _time_key; public: BtpPort(const char *par_port_name = NULL); ~BtpPort(); Loading @@ -25,7 +29,7 @@ public: void set_parameter(const char *parameter_name, const char *parameter_value); void receiveMsg (const LibItsBtp__TypesAndValues::BtpPacket&, const Params&); void receiveMsg (const LibItsBtp__TestSystem::BtpInd&, const Params&); private: /* void Handle_Fd_Event(int fd, boolean is_readable, Loading