source name is a string
This commit is contained in:
parent
03347a5e21
commit
92e14a2b5c
|
@ -28,30 +28,13 @@
|
|||
namespace SACN {
|
||||
namespace DATA {
|
||||
|
||||
/**
|
||||
* @brief frame_header::streamSize
|
||||
* @return
|
||||
*/
|
||||
size_t data_header::streamSize() const
|
||||
{
|
||||
return sizeof(source_name)
|
||||
+ sizeof(priority)
|
||||
+ sizeof(sync_address)
|
||||
+ sizeof(sequence_number)
|
||||
+ sizeof(options)
|
||||
+ sizeof(universe);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief frame_header::iStream
|
||||
* @param stream
|
||||
*/
|
||||
void data_header::iStream(ACN::PDU::Stream stream)
|
||||
{
|
||||
stream->read(source_name, sizeof(source_name));
|
||||
if (stream->gcount() != sizeof(source_name))
|
||||
return stream->setstate(std::ios_base::failbit);
|
||||
stream->readString(source_name, 64);
|
||||
*stream >> priority;
|
||||
*stream >> sync_address;
|
||||
*stream >> sequence_number;
|
||||
|
@ -66,7 +49,7 @@ void data_header::iStream(ACN::PDU::Stream stream)
|
|||
*/
|
||||
void data_header::oStream(ACN::PDU::Stream stream) const
|
||||
{
|
||||
stream->write(source_name, 64);
|
||||
stream->writeString(source_name, 64);
|
||||
*stream << priority;
|
||||
*stream << sync_address;
|
||||
*stream << sequence_number;
|
||||
|
|
|
@ -33,14 +33,14 @@ namespace DATA {
|
|||
* @brief Table 6-1: E1.31 Data Packet Framing Layer
|
||||
*/
|
||||
struct data_header : ACN::PDU::pdu_header {
|
||||
uint8_t source_name[64];
|
||||
std::string source_name;
|
||||
uint8_t priority;
|
||||
uint16_t sync_address;
|
||||
uint8_t sequence_number;
|
||||
uint8_t options;
|
||||
uint16_t universe;
|
||||
|
||||
size_t streamSize() const override;
|
||||
size_t streamSize() const override { return 71; }
|
||||
void iStream(ACN::PDU::Stream) override;
|
||||
void oStream(ACN::PDU::Stream) const override;
|
||||
};
|
||||
|
|
|
@ -53,7 +53,7 @@ UniverseSource::UniverseSource(std::shared_ptr<DATA::Pdu> pdu)
|
|||
auto frame_header = static_cast<DATA::data_header*>(pdu->header());
|
||||
|
||||
cid_ = root_header->cid;
|
||||
description_ = std::string((char*)frame_header->source_name);
|
||||
description_ = frame_header->source_name;
|
||||
universe_ = frame_header->universe;
|
||||
priority_ = frame_header->priority;
|
||||
sync_address_ = frame_header->sync_address;
|
||||
|
|
Loading…
Reference in New Issue