From 506deb7e5e6786c7855a38f73579afc716db7481 Mon Sep 17 00:00:00 2001 From: Kevin Matz Date: Sun, 21 May 2023 12:41:39 -0400 Subject: [PATCH] devices have style codes --- protocol/artistic/artnet/controller.cpp | 3 ++- protocol/artistic/artnet/device.cpp | 6 ++++-- protocol/artistic/artnet/device.h | 4 +++- protocol/artistic/artnet/node.cpp | 1 + 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/protocol/artistic/artnet/controller.cpp b/protocol/artistic/artnet/controller.cpp index eb1ea81..db52278 100644 --- a/protocol/artistic/artnet/controller.cpp +++ b/protocol/artistic/artnet/controller.cpp @@ -27,7 +27,8 @@ namespace ARTNET { Controller::Controller() - : minimum_polling_interval(2500) + : Device(StController) + , minimum_polling_interval(2500) , _periodic_polling_enabled(true) , _pollster(std::thread(&Controller::_periodic_polling, this)) , last_poll(std::chrono::system_clock::from_time_t(0)) diff --git a/protocol/artistic/artnet/device.cpp b/protocol/artistic/artnet/device.cpp index da0615e..9f0483b 100644 --- a/protocol/artistic/artnet/device.cpp +++ b/protocol/artistic/artnet/device.cpp @@ -28,13 +28,15 @@ namespace ARTNET { /** * @brief Device::Device + * @param style * * \note A ArtPollReply packet is required to be broadcast to the Directed Broadcast address by * all Art-Net devices on power up. Since information in that packet requres a fully configured * device, it must be specifically sent later. */ -Device::Device() - : diagnostic_reporting_threshold(DpCritial) +Device::Device(Style style) + : styleCode(style) + , diagnostic_reporting_threshold(DpCritial) , _shortName("OpenLCP Device") , _longName("Generic OpenLCP Art-Net Device") { diff --git a/protocol/artistic/artnet/device.h b/protocol/artistic/artnet/device.h index 1f6c58a..123e770 100644 --- a/protocol/artistic/artnet/device.h +++ b/protocol/artistic/artnet/device.h @@ -38,7 +38,9 @@ using ACN::SDT::UDP::ipAddress; class Device { public: - explicit Device(); + explicit Device(Style); + + const Style styleCode; //!< \cite ARTNET The Style code defines the equipment style of the device. void receive(ACN::PDU::Stream); void receive(std::shared_ptr); diff --git a/protocol/artistic/artnet/node.cpp b/protocol/artistic/artnet/node.cpp index eacbeea..aceda24 100644 --- a/protocol/artistic/artnet/node.cpp +++ b/protocol/artistic/artnet/node.cpp @@ -27,6 +27,7 @@ namespace ARTNET { Node::Node() + : Device(StNode) { setShortName("OpenLCP Node"); setLongName("Generic OpenLCP Art-Net Node");