1#ifndef DATA_INDICATION_HPP_DOJK9Q8T
2#define DATA_INDICATION_HPP_DOJK9Q8T
4#include <vanetza/common/byte_buffer.hpp>
5#include <vanetza/common/its_aid.hpp>
6#include <vanetza/geonet/destination_variant.hpp>
7#include <vanetza/geonet/interface.hpp>
8#include <vanetza/geonet/position_vector.hpp>
9#include <vanetza/security/decap_service.hpp>
10#include <boost/optional.hpp>
18
19
20
23 UpperProtocol upper_protocol;
24 TransportType transport_type;
25 DestinationVariant destination;
27 security::DecapReport security_report;
28 boost::optional<ItsAid> its_aid;
29 boost::optional<ByteBuffer> permissions;
32 boost::optional<
Lifetime> remaining_packet_lifetime;
33 boost::optional<
unsigned> remaining_hop_limit;
ChunckPacket is a packet consisting of several memory chunks.
ByteBufferConvertible & operator[](OsiLayer ol)
ChunkPacket & merge(ChunkPacket &packet, OsiLayer from, OsiLayer to)
const ByteBufferConvertible & layer(OsiLayer ol) const
const ByteBufferConvertible & operator[](OsiLayer ol) const
ByteBufferConvertible & layer(OsiLayer ol)
std::size_t size(OsiLayer from, OsiLayer to) const
ChunkPacket extract(OsiLayer from, OsiLayer to)
std::size_t size(OsiLayer from, OsiLayer to) const
buffer_const_range operator[](OsiLayer layer) const
void set_boundary(OsiLayer, unsigned bytes)
const ByteBuffer & buffer() const
CohesivePacket(const ByteBuffer &buffer, OsiLayer layer)
void trim(OsiLayer from, unsigned bytes)
std::size_t size(OsiLayer single_layer) const
value_type operator[](size_type) const
byte_view_range(ByteBuffer &&)
byte_view_range(const ByteBuffer::const_iterator &, const ByteBuffer::const_iterator &)
ByteBuffer::const_pointer data() const