From 0f481ae2a79cc50108415d870c0b443e43739b0b Mon Sep 17 00:00:00 2001 From: Kevin Matz Date: Tue, 15 Nov 2022 11:42:27 -0500 Subject: [PATCH] stubs for Artnet I/O --- protocol/artnet/device.cpp | 178 +++++++++++++++++++++++++++++++++++++ protocol/artnet/device.h | 29 ++++++ 2 files changed, 207 insertions(+) diff --git a/protocol/artnet/device.cpp b/protocol/artnet/device.cpp index a29c725..96f7456 100644 --- a/protocol/artnet/device.cpp +++ b/protocol/artnet/device.cpp @@ -28,6 +28,184 @@ namespace ARTNET { Device::Device() { + /// \cite ARTNET A ArtPollReply packet is broadcast to the Directed Broadcast + /// address by all Art-Net devices on power up. + Device::txArtPollReply(); // Always the reference implimentation, never virual. +} + + +/** + * @brief Device::rxArtPoll + */ +void Device::rxArtPoll() +{ + /// \todo impliment rxArtPoll +} + + +/** + * @brief Device::txArtPollReply + * @param query + * + * Generate and send the reply to an ArtPoll packet + */ +void Device::txArtPollReply(std::shared_ptr query) +{ + (void)query; + /// \todo impliment txArtPollReply +} + + +/** + * @brief Device::txArtDiagData + */ +void Device::txArtDiagData() +{ + /// \todo impliment txArtDiagData +} + + +/** + * @brief Device::rxArtTimeCode + */ +void Device::rxArtTimeCode() +{ + /// \todo impliment rxArtTimeCode +} + + +/** + * @brief Device::txArtTimeCode + */ +void Device::txArtTimeCode() +{ + /// \todo impliment txArtTimeCode +} + + +/** + * @brief Device::rxArtCommand + */ +void Device::rxArtCommand() +{ + /// \todo impliment rxArtCommand +} + + +/** + * @brief Device::txArtCommand + */ +void Device::txArtCommand() +{ + /// \todo impliment txArtCommand +} + + +/** + * @brief Device::rxArtTrigger + */ +void Device::rxArtTrigger() +{ + /// \todo impliment rxArtTrigger +} + + +/** + * @brief Device::txArtTrigger + */ +void Device::txArtTrigger() +{ + /// \todo impliment txArtTrigger +} + + +/** + * @brief Device::rxArtDmx + */ +void Device::rxArtDmx() +{ + /// \todo impliment rxArtDmx +} + + +/** + * @brief Device::txArtDmx + */ +void Device::txArtDmx() +{ + /// \todo impliment txArtDmx +} + + +/** + * @brief Device::rxArtNzs + */ +void Device::rxArtNzs() +{ + /// \todo impliment rxArtNzs +} + + +/** + * @brief Device::txArtNzs + */ +void Device::txArtNzs() +{ + /// \todo impliment txArtNzs +} + + +/** + * @brief Device::rxArtVlc + */ +void Device::rxArtVlc() +{ + /// \todo impliment rxArtVlc +} + + +/** + * @brief Device::txArtVlc + */ +void Device::txArtVlc() +{ + /// \todo impliment txArtVlc +} + + +/** + * @brief Device::rxArtRdm + */ +void Device::rxArtRdm() +{ + /// \todo impliment rxArtRdm +} + + +/** + * @brief Device::txArtRdm + */ +void Device::txArtRdm() +{ + /// \todo impliment txArtRdm +} + + +/** + * @brief Device::rxArtRdmSub + */ +void Device::rxArtRdmSub() +{ + /// \todo impliment rxArtRdmSub +} + + +/** + * @brief Device::txArtRdmSub + */ +void Device::txArtRdmSub() +{ + /// \todo impliment txArtRdmSub } } // namespace ARTNET diff --git a/protocol/artnet/device.h b/protocol/artnet/device.h index 0933f50..2cf4914 100644 --- a/protocol/artnet/device.h +++ b/protocol/artnet/device.h @@ -23,6 +23,9 @@ */ #pragma once +#include "packet.h" +#include "sdt/udp.h" + namespace ARTNET { /** @@ -33,6 +36,32 @@ class Device { public: explicit Device(); + +// virtual void receive(ACN::PDU::Stream); + +protected: +// void send(const uint32_t vector, const std::shared_ptr data, +// const ACN::SDT::UDP::ipAddress&); + + virtual void rxArtPoll(); + virtual void txArtPollReply(std::shared_ptr = nullptr); + virtual void txArtDiagData(); + virtual void rxArtTimeCode(); + virtual void txArtTimeCode(); + virtual void rxArtCommand(); + virtual void txArtCommand(); + virtual void rxArtTrigger(); + virtual void txArtTrigger(); + virtual void rxArtDmx(); + virtual void txArtDmx(); + virtual void rxArtNzs(); + virtual void txArtNzs(); + virtual void rxArtVlc(); + virtual void txArtVlc(); + virtual void rxArtRdm(); + virtual void txArtRdm(); + virtual void rxArtRdmSub(); + virtual void txArtRdmSub(); }; } // namespace ARTNET