chromium/third_party/openscreen/src/platform/base/udp_packet.h

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef PLATFORM_BASE_UDP_PACKET_H_
#define PLATFORM_BASE_UDP_PACKET_H_

#include <stdint.h>

#include <string>
#include <utility>
#include <vector>

#include "platform/base/ip_address.h"

namespace openscreen {

// A move-only std::vector of bytes that may not exceed the maximum possible
// size of a UDP packet. Implicit copy construction/assignment is disabled to
// prevent hidden copies (i.e., those not explicitly coded).
class UdpPacket : public std::vector<uint8_t> {};

}  // namespace openscreen

#endif  // PLATFORM_BASE_UDP_PACKET_H_