122 if (_socket < 0 || _address ==
nullptr)
124 throw std::runtime_error(
"VITA UDP sender is not open");
132 const auto*
payload = std::bit_cast<const char*>(bytes.data());
134 static_cast<const sockaddr*
>(
static_cast<const void*
>(_address.get())),
135 static_cast<int>(_address_size));
137 const auto sent =
::sendto(_socket, bytes.data(), bytes.size(), 0,
138 static_cast<const sockaddr*
>(
static_cast<const void*
>(_address.get())),
141 if (
sent < 0 ||
static_cast<std::size_t
>(
sent) != bytes.size())
143 throw std::runtime_error(
"VITA UDP send failed");