use RDM::Message for VECTOR_RDM_CMD_RDM_DATA
This commit is contained in:
parent
fa13e03ffa
commit
587f5a8d33
|
@ -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);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue