1
0
Fork 0

use RDM::Message for VECTOR_RDM_CMD_RDM_DATA

This commit is contained in:
Kevin Matz 2021-08-13 12:22:29 -04:00
parent fa13e03ffa
commit 587f5a8d33
2 changed files with 11 additions and 6 deletions

View File

@ -253,9 +253,11 @@ namespace RdmCmd {
*/
void rdm_data::iStream(ACN::PDU::Stream stream)
{
data.push_back(VECTOR_RDM_CMD_RDM_DATA);
auto buffer = std::vector<uint8_t>();
buffer.push_back(RDM::SC_RDM);
while (stream->good())
data.push_back(stream->readType<uint8_t>());
buffer.push_back(stream->readType<uint8_t>());
message.read(buffer);
}
@ -264,8 +266,10 @@ void rdm_data::iStream(ACN::PDU::Stream stream)
*/
void rdm_data::oStream(ACN::PDU::Stream stream) const
{
for (size_t i = 1; i < data.size(); i++ )
*stream << data.at(i);
auto buffer = std::vector<uint8_t>();
message.write(buffer);
for (size_t i = 1; i < buffer.size(); i++ )
*stream << buffer.at(i);
}

View File

@ -25,6 +25,7 @@
#include "pdu.h"
#include "rdm/uid.h"
#include "rdm/message.h"
#include "uuid/uuid.h"
namespace RDMnet {
@ -147,8 +148,8 @@ namespace RdmCmd {
struct rdm_data
: public ACN::PDU::pdu_data
{
std::vector<uint8_t> data;
size_t streamSize() const override { return (data.size() > 0) ? data.size() - 1 : 0; }
RDM::Message message;
size_t streamSize() const override { return 23 + message.length(); }
void iStream(ACN::PDU::Stream) override;
void oStream(ACN::PDU::Stream) const override;
};