diff --git a/pubsub/CMakeLists.txt b/pubsub/CMakeLists.txt index 6cb9d8e..f037c1e 100644 --- a/pubsub/CMakeLists.txt +++ b/pubsub/CMakeLists.txt @@ -23,16 +23,57 @@ cmake_minimum_required(VERSION 3.20) project(pubsub VERSION 0.1.0 LANGUAGES CXX) -find_package(up-client-zenoh-cpp REQUIRED) - -# sub -add_executable(sub src/main_sub.cpp) -target_link_libraries(sub - PRIVATE - up-client-zenoh-cpp::up-client-zenoh-cpp) - -# pub -add_executable(pub src/main_pub.cpp) -target_link_libraries(pub - PRIVATE - up-client-zenoh-cpp::up-client-zenoh-cpp) +find_package(spdlog REQUIRED) + +if(BUILD_UNBUNDLED) + find_package(up-client-zenoh-cpp REQUIRED) +endif() + +add_definitions(-DSPDLOG_FMT_EXTERNAL) + +if(BUILD_UNBUNDLED) + # sub + add_executable(sub src/main_sub.cpp) + target_link_libraries(sub + PRIVATE + up-client-zenoh-cpp::up-client-zenoh-cpp) + + target_include_directories(sub + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) + + # pub + add_executable(pub src/main_pub.cpp) + target_link_libraries(pub + PRIVATE + up-client-zenoh-cpp::up-client-zenoh-cpp) + + target_include_directories(pub + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) +else() + # sub + add_executable(sub src/main_sub.cpp) + target_link_libraries(sub + PRIVATE + up-cpp + up-client-zenoh-cpp) + + target_include_directories(sub + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) + # pub + add_executable(pub src/main_pub.cpp) + target_link_libraries(pub + PRIVATE + up-cpp + up-client-zenoh-cpp) + + target_include_directories(pub + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) +endif() diff --git a/pubsub/src/main_pub.cpp b/pubsub/src/main_pub.cpp index b642f85..ea13c17 100644 --- a/pubsub/src/main_pub.cpp +++ b/pubsub/src/main_pub.cpp @@ -31,11 +31,9 @@ #include #include #include -#include #include #include #include -#include using namespace uprotocol::utransport; using namespace uprotocol::uri; @@ -90,7 +88,7 @@ UCode sendMessage(ZenohUTransport *transport, auto uuid = Uuidv8Factory::create(); - UAttributesBuilder builder(uuid, UMessageType::UMESSAGE_TYPE_PUBLISH, UPriority::UPRIORITY_CS1); + UAttributesBuilder builder(uuid, UMessageType::PUBLISH, UPriority::STANDARD); UAttributes attributes = builder.build(); UPayload payload(buffer, size, UPayloadType::VALUE); @@ -105,8 +103,12 @@ UCode sendMessage(ZenohUTransport *transport, /* The sample pub applications demonstrates how to send data using uTransport - * There are three topics that are published - random number, current time and a counter */ -int main(int argc, char **argv) { +int main(int argc, + char **argv) { + (void)argc; + (void)argv; + signal(SIGINT, signalHandler); UStatus status; @@ -154,4 +156,4 @@ int main(int argc, char **argv) { } return 0; -} +} \ No newline at end of file diff --git a/pubsub/src/main_sub.cpp b/pubsub/src/main_sub.cpp index 3d7cb71..e4027a7 100644 --- a/pubsub/src/main_sub.cpp +++ b/pubsub/src/main_sub.cpp @@ -85,8 +85,12 @@ class CustomListener : public UListener { /* The sample sub applications demonstrates how to consume data using uTransport - * There are three topics that are received - random number, current time and a counter */ -int main(int argc, char** argv) { +int main(int argc, + char** argv) { + (void)argc; + (void)argv; + signal(SIGINT, signalHandler); UStatus status; @@ -145,4 +149,4 @@ int main(int argc, char** argv) { } return 0; -} +} \ No newline at end of file diff --git a/rpc/CMakeLists.txt b/rpc/CMakeLists.txt index d3b7a00..dc5f39a 100644 --- a/rpc/CMakeLists.txt +++ b/rpc/CMakeLists.txt @@ -23,16 +23,57 @@ cmake_minimum_required(VERSION 3.20) project(rpc VERSION 0.1.0 LANGUAGES CXX) -find_package(up-client-zenoh-cpp REQUIRED) - -# rpc server -add_executable(rpc_server src/main_rpc_server.cpp) -target_link_libraries(rpc_server - PRIVATE - up-client-zenoh-cpp::up-client-zenoh-cpp) - -# rpc client -add_executable(rpc_client src/main_rpc_client.cpp) -target_link_libraries(rpc_client - PRIVATE - up-client-zenoh-cpp::up-client-zenoh-cpp) +find_package(spdlog REQUIRED) + +if(BUILD_UNBUNDLED) + find_package(up-client-zenoh-cpp REQUIRED) +endif() + +add_definitions(-DSPDLOG_FMT_EXTERNAL) + +if(BUILD_UNBUNDLED) + # rpc client + add_executable(rpc_client src/main_rpc_client.cpp) + target_link_libraries(rpc_client + PRIVATE + up-client-zenoh-cpp::up-client-zenoh-cpp) + + target_include_directories(rpc_client + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) + + # rpc server + add_executable(rpc_server src/main_rpc_server.cpp) + target_link_libraries(rpc_server + PRIVATE + up-client-zenoh-cpp::up-client-zenoh-cpp) + + target_include_directories(rpc_server + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) +else() + # rpc client + add_executable(rpc_client src/main_rpc_client.cpp) + target_link_libraries(rpc_client + PRIVATE + up-cpp + up-client-zenoh-cpp) + + target_include_directories(rpc_client + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) + # pub + add_executable(rpc_server src/main_rpc_server.cpp) + target_link_libraries(rpc_server + PRIVATE + up-cpp + up-client-zenoh-cpp) + + target_include_directories(rpc_server + PRIVATE + ${fmt_INCLUDE_DIR} + ${spdlog_INCLUDE_DIR}) +endif() diff --git a/rpc/src/main_rpc_client.cpp b/rpc/src/main_rpc_client.cpp index c00f4ba..6fcc7b8 100644 --- a/rpc/src/main_rpc_client.cpp +++ b/rpc/src/main_rpc_client.cpp @@ -29,8 +29,6 @@ #include #include #include -#include -#include using namespace uprotocol::utransport; using namespace uprotocol::uuid; @@ -49,7 +47,7 @@ UPayload sendRPC(UUri& uri) { auto uuid = Uuidv8Factory::create(); - UAttributesBuilder builder(uuid, UMessageType::UMESSAGE_TYPE_REQUEST, UPriority::UPRIORITY_CS1); + UAttributesBuilder builder(uuid, UMessageType::REQUEST, UPriority::STANDARD); UAttributes attributes = builder.build(); constexpr uint8_t BUFFER_SIZE = 1; @@ -109,4 +107,4 @@ int main(int argc, char** argv) { } return 0; -} +} \ No newline at end of file diff --git a/rpc/src/main_rpc_server.cpp b/rpc/src/main_rpc_server.cpp index edf4e8d..9e52011 100644 --- a/rpc/src/main_rpc_server.cpp +++ b/rpc/src/main_rpc_server.cpp @@ -26,7 +26,6 @@ #include #include #include -#include #include #include #include @@ -60,7 +59,7 @@ class RpcListener : public UListener { /* Build response attributes - the same UUID should be used to send the response * it is also possible to send the response outside of the callback context */ - UAttributesBuilder builder(attributes.id(), UMessageType::UMESSAGE_TYPE_RESPONSE, UPriority::UPRIORITY_CS1); + UAttributesBuilder builder(attributes.id(), UMessageType::RESPONSE, UPriority::STANDARD); UAttributes responseAttributes = builder.build(); /* Send the response */ @@ -70,8 +69,12 @@ class RpcListener : public UListener { /* The sample RPC server applications demonstrates how to receive RPC requests and send a response back to the client - * The response in this example will be the current time */ -int main(int argc, char** argv) { +int main(int argc, + char** argv) { + (void)argc; + (void)argv; + RpcListener listener; signal(SIGINT, signalHandler); @@ -113,4 +116,4 @@ int main(int argc, char** argv) { } return 0; -} +} \ No newline at end of file