#include "rawtcpdata.h"

namespace myapp::modbus {

std::unique_ptr<raw_data> raw_data::tcp()
{
	return std::make_unique<raw_tcp_data>();
}

uint8_t* raw_tcp_data::data()
{
	return &adu_[6];
}

int raw_tcp_data::data_length() const
{
	return adu_[4] << 8 | adu_[5];
}

void raw_tcp_data::data_length(int value)
{
	adu_[4] = (value & 0xff00) >> 8;
	adu_[5] = value & 0xff;
}

} /* namespace myapp::modbus */
