Vanetza
Loading...
Searching...
No Matches
pdu_variant.hpp
1#ifndef PDU_VARIANT_HPP_AAEVKD5M
2#define PDU_VARIANT_HPP_AAEVKD5M
3
4#include <vanetza/geonet/extended_pdu.hpp>
5#include <vanetza/geonet/beacon_header.hpp>
6#include <vanetza/geonet/gbc_header.hpp>
7#include <vanetza/geonet/shb_header.hpp>
8#include <vanetza/geonet/tsb_header.hpp>
9#include <boost/variant.hpp>
10
11namespace vanetza
12{
13namespace geonet
14{
15
16typedef ExtendedPdu<ShbHeader> ShbPdu;
17typedef ExtendedPdu<TsbHeader> TsbPdu;
18typedef ExtendedPdu<BeaconHeader> BeaconPdu;
19typedef ExtendedPdu<GeoBroadcastHeader> GbcPdu;
20
21typedef boost::variant<BeaconPdu, GbcPdu, ShbPdu> PduVariant;
22
23} // namespace geonet
24} // namespace vanetza
25
26#endif /* PDU_VARIANT_HPP_AAEVKD5M */
ChunckPacket is a packet consisting of several memory chunks.
std::size_t size(OsiLayer from, OsiLayer to) const
virtual void cancel(const void *scope)=0
virtual Clock::time_point now() const =0
std::size_t counter(const Identifier &packet) const
boost::optional< CbfPacket > fetch(const Identifier &id)
void remove_timer(typename timer_bimap::left_map::iterator)
bool remove(const Identifier &id)
CbfPacketBuffer(Runtime &rt, TimerCallback cb, std::unique_ptr< CbfCounter > cnt, std::size_t bytes)
void update(const Identifier &id, Clock::duration timeout)
void add(CbfPacket &&packet, Clock::duration timeout)
const CbfPacket * find(const Identifier &id) const
bool reduce_lifetime(const Timer &, CbfPacket &) const
Clock::duration reduce_lifetime(Clock::duration d)
const MacAddress & sender() const
SequenceNumber sequence_number() const
const Address & source() const