From 1dc95b4eed7974549ef43a87e0777aa343b30fd4 Mon Sep 17 00:00:00 2001 From: Tobias Frust Date: Wed, 29 Jun 2016 21:44:58 +0200 Subject: added client and server executable for testing simple udp packet transfer --- src/main_server.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/main_server.cpp (limited to 'src/main_server.cpp') diff --git a/src/main_server.cpp b/src/main_server.cpp new file mode 100644 index 0000000..b90de52 --- /dev/null +++ b/src/main_server.cpp @@ -0,0 +1,28 @@ +#include "UDPServer/UDPServer.h" + +#include +#include + +int main (int argc, char *argv[]){ + + std::cout << "Receiving UDP packages: " << std::endl; + + std::string address = "localhost"; + int port = 1234; + + UDPServer server = UDPServer(address, port); + + std::size_t length{8000}; + + char buf[length]; + + server.recv(buf, length); + + for(auto i = 0; i < length; i++){ + printf("%c", buf[i]); + } + printf("\n"); + + return 0; + +} -- cgit v1.2.3 From 5680aa99001cb50c707c4187cd8ada0c41a573dd Mon Sep 17 00:00:00 2001 From: Tobias Frust Date: Thu, 30 Jun 2016 10:13:01 +0200 Subject: implemented virtual DetectorModule with simple send via udp --- src/main_server.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/main_server.cpp') diff --git a/src/main_server.cpp b/src/main_server.cpp index b90de52..267023f 100644 --- a/src/main_server.cpp +++ b/src/main_server.cpp @@ -7,19 +7,19 @@ int main (int argc, char *argv[]){ std::cout << "Receiving UDP packages: " << std::endl; - std::string address = "localhost"; - int port = 1234; + std::string address = "10.0.0.10"; + int port = 4000; UDPServer server = UDPServer(address, port); - std::size_t length{8000}; + std::size_t length{16*500}; - char buf[length]; + unsigned short buf[length]; - server.recv(buf, length); + server.recv(buf, length*sizeof(unsigned short)); for(auto i = 0; i < length; i++){ - printf("%c", buf[i]); + printf("%i ", buf[i]); } printf("\n"); -- cgit v1.2.3 From dbf28e725f062744222559257abe64d8a39a9d50 Mon Sep 17 00:00:00 2001 From: Tobias Frust Date: Thu, 30 Jun 2016 10:27:20 +0200 Subject: bug fixes --- src/main_server.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main_server.cpp') diff --git a/src/main_server.cpp b/src/main_server.cpp index 267023f..167dfca 100644 --- a/src/main_server.cpp +++ b/src/main_server.cpp @@ -16,7 +16,7 @@ int main (int argc, char *argv[]){ unsigned short buf[length]; - server.recv(buf, length*sizeof(unsigned short)); + server.recv((char *)buf, length*sizeof(unsigned short)); for(auto i = 0; i < length; i++){ printf("%i ", buf[i]); -- cgit v1.2.3 From 0c33319451deec9b5461b57856423bc619817245 Mon Sep 17 00:00:00 2001 From: Tobias Frust Date: Thu, 30 Jun 2016 15:22:07 +0200 Subject: added classes for detector; Sending out in n different streams with n different ports --- src/main_server.cpp | 56 +++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 44 insertions(+), 12 deletions(-) (limited to 'src/main_server.cpp') diff --git a/src/main_server.cpp b/src/main_server.cpp index 167dfca..a645f49 100644 --- a/src/main_server.cpp +++ b/src/main_server.cpp @@ -1,28 +1,60 @@ #include "UDPServer/UDPServer.h" +#include +#include +#include + #include #include +#include + +void initLog() { +#ifndef NDEBUG + boost::log::core::get()->set_filter(boost::log::trivial::severity >= boost::log::trivial::debug); +#else + boost::log::core::get()->set_filter(boost::log::trivial::severity >= boost::log::trivial::info); +#endif +} + +void start(std::function func){ + std::thread([func]() { + while (true) + { + func(); + } + }).detach(); +} int main (int argc, char *argv[]){ - std::cout << "Receiving UDP packages: " << std::endl; + initLog(); + + std::string address = "localhost"; + int port = 4002; + + UDPServer server = UDPServer(address, port); - std::string address = "10.0.0.10"; - int port = 4000; + std::size_t length{32768}; - UDPServer server = UDPServer(address, port); + std::vector buf(16000); - std::size_t length{16*500}; + std::cout << "Receiving UDP packages: " << std::endl; - unsigned short buf[length]; +// for(auto i = 0; i < 27; i++){ +// std::function f = [=]() { +// server.recv(); +// }; +// start(); +// } - server.recv((char *)buf, length*sizeof(unsigned short)); + while(true){ + int bytes = server.recv((char*)buf.data(), length); + std::size_t index = *((std::size_t *)buf.data()); + if(index%1000 == 99) printf("%lu\n", index); - for(auto i = 0; i < length; i++){ - printf("%i ", buf[i]); - } - printf("\n"); + BOOST_LOG_TRIVIAL(debug) << "Server: Received " << bytes << " Bytes with Index " << index; + } - return 0; + return 0; } -- cgit v1.2.3 From d71e5fe7330fa51cdce466ec0df876eb9b8e721e Mon Sep 17 00:00:00 2001 From: Tobias Frust Date: Mon, 11 Jul 2016 14:58:00 +0200 Subject: UDP packets are sent out correctly --- src/main_server.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/main_server.cpp') diff --git a/src/main_server.cpp b/src/main_server.cpp index a645f49..6e936e4 100644 --- a/src/main_server.cpp +++ b/src/main_server.cpp @@ -35,6 +35,7 @@ int main (int argc, char *argv[]){ UDPServer server = UDPServer(address, port); std::size_t length{32768}; + std::size_t lastIndex{0}; std::vector buf(16000); @@ -52,6 +53,11 @@ int main (int argc, char *argv[]){ std::size_t index = *((std::size_t *)buf.data()); if(index%1000 == 99) printf("%lu\n", index); + if(lastIndex != (index-1)) + BOOST_LOG_TRIVIAL(warning) << "Packet loss or wrong order!"; + + lastIndex = index; + BOOST_LOG_TRIVIAL(debug) << "Server: Received " << bytes << " Bytes with Index " << index; } -- cgit v1.2.3