From 566aa608a30bf4a3981ab809869009eb637bbe39 Mon Sep 17 00:00:00 2001 From: Dale Phurrough Date: Thu, 8 Dec 2022 20:07:19 +0100 Subject: [PATCH] fix luxonis/depthai-core#650 missing XLinkProtocolToStr() - add local xlinkproto -> string from luxonis/XLink/tree/5c61615066af6539e50a4a17b5df3466e4350b21 --- examples/bootloader/flash_bootloader.cpp | 17 ++++++++++++++++- examples/bootloader/flash_user_bootloader.cpp | 17 ++++++++++++++++- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/examples/bootloader/flash_bootloader.cpp b/examples/bootloader/flash_bootloader.cpp index e90885f51..6b803525f 100644 --- a/examples/bootloader/flash_bootloader.cpp +++ b/examples/bootloader/flash_bootloader.cpp @@ -5,6 +5,21 @@ #include "depthai/depthai.hpp" #include "depthai/xlink/XLinkConnection.hpp" +static const char* ProtocolToStr(XLinkProtocol_t val) { + switch (val) { + case X_LINK_USB_VSC: return "X_LINK_USB_VSC"; + case X_LINK_USB_CDC: return "X_LINK_USB_CDC"; + case X_LINK_PCIE: return "X_LINK_PCIE"; + case X_LINK_IPC: return "X_LINK_IPC"; + case X_LINK_TCP_IP: return "X_LINK_TCP_IP"; + case X_LINK_NMB_OF_PROTOCOLS: return "X_LINK_NMB_OF_PROTOCOLS"; + case X_LINK_ANY_PROTOCOL: return "X_LINK_ANY_PROTOCOL"; + default: + return "INVALID_ENUM_VALUE"; + break; + } +} + int main(int argc, char** argv) { using namespace std::chrono; @@ -29,7 +44,7 @@ int main(int argc, char** argv) { } else { for(int i = 0; i < deviceInfos.size(); i++) { const auto& devInfo = deviceInfos[i]; - std::cout << "[" << i << "] " << devInfo.getMxId() << "[" << XLinkProtocolToStr(devInfo.protocol) << "]"; + std::cout << "[" << i << "] " << devInfo.getMxId() << "[" << ProtocolToStr(devInfo.protocol) << "]"; if(devInfo.state == X_LINK_BOOTLOADER) { dai::DeviceBootloader bl(devInfo); std::cout << " current bootloader: " << bl.getVersion(); diff --git a/examples/bootloader/flash_user_bootloader.cpp b/examples/bootloader/flash_user_bootloader.cpp index 633a87792..c3f66b00b 100644 --- a/examples/bootloader/flash_user_bootloader.cpp +++ b/examples/bootloader/flash_user_bootloader.cpp @@ -5,6 +5,21 @@ #include "depthai/depthai.hpp" #include "depthai/xlink/XLinkConnection.hpp" +static const char* ProtocolToStr(XLinkProtocol_t val) { + switch (val) { + case X_LINK_USB_VSC: return "X_LINK_USB_VSC"; + case X_LINK_USB_CDC: return "X_LINK_USB_CDC"; + case X_LINK_PCIE: return "X_LINK_PCIE"; + case X_LINK_IPC: return "X_LINK_IPC"; + case X_LINK_TCP_IP: return "X_LINK_TCP_IP"; + case X_LINK_NMB_OF_PROTOCOLS: return "X_LINK_NMB_OF_PROTOCOLS"; + case X_LINK_ANY_PROTOCOL: return "X_LINK_ANY_PROTOCOL"; + default: + return "INVALID_ENUM_VALUE"; + break; + } +} + int main(int argc, char** argv) try { using namespace std::chrono; @@ -16,7 +31,7 @@ int main(int argc, char** argv) try { } else { for(int i = 0; i < deviceInfos.size(); i++) { const auto& devInfo = deviceInfos[i]; - std::cout << "[" << i << "] " << devInfo.getMxId() << "[" << XLinkProtocolToStr(devInfo.protocol) << "]"; + std::cout << "[" << i << "] " << devInfo.getMxId() << "[" << ProtocolToStr(devInfo.protocol) << "]"; if(devInfo.state == X_LINK_BOOTLOADER) { dai::DeviceBootloader bl(devInfo); std::cout << " current bootloader: " << bl.getVersion();