platform implementation for sending PDU::Stream RLP datagrams
This commit is contained in:
parent
044c95b168
commit
c811469c95
|
@ -78,3 +78,20 @@ void QSacnNode::udpReceive()
|
|||
}
|
||||
|
||||
|
||||
void QSacnNode::rlpSend(const ACN::PDU::Stream stream,
|
||||
const ACN::SDT::UDP::ipAddress& ip)
|
||||
{
|
||||
QHostAddress addr;
|
||||
switch (ip.type) {
|
||||
case ACN::SDT::SDT_ADDR_IPV4:
|
||||
addr = QHostAddress(ip.address.ipv4.value);
|
||||
break;
|
||||
case ACN::SDT::SDT_ADDR_IPV6:
|
||||
return;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
writeDatagram(reinterpret_cast<char*>(stream->base()), stream->size(),
|
||||
addr, ip.port);
|
||||
}
|
||||
|
|
|
@ -22,9 +22,14 @@ public:
|
|||
explicit QSacnNode(QObject *parent = nullptr, QUuid = QUuid::createUuid());
|
||||
QSacnUniverse * universe(const uint16_t u) {return universes_.value(u); }
|
||||
|
||||
// rlp component
|
||||
void rlpSend(const ACN::PDU::Stream, const ACN::SDT::UDP::ipAddress&) override;
|
||||
|
||||
// reciever
|
||||
virtual void subscribe(const uint16_t universe = 1);
|
||||
virtual void unsubscribe(const uint16_t);
|
||||
void subscribe(const uint16_t universe = 1) override;
|
||||
void unsubscribe(const uint16_t) override;
|
||||
|
||||
|
||||
|
||||
signals:
|
||||
void foundUniverse(
|
||||
|
|
Loading…
Reference in New Issue