1#ifndef SEQUENCE_NUMBER_HPP_HEO4A3XC
2#define SEQUENCE_NUMBER_HPP_HEO4A3XC
4#include <vanetza/geonet/serialization.hpp>
5#include <boost/operators.hpp>
19 using value_type = uint16_t;
20 static constexpr value_type max = std::numeric_limits<value_type>::max();
22 SequenceNumber() : m_number(0) {}
23 explicit SequenceNumber(value_type number) : m_number(number) {}
24 explicit operator value_type()
const {
return m_number; }
26 bool operator==(
SequenceNumber other)
const {
return m_number == other.m_number; }
27 void operator+=(
SequenceNumber other) { m_number += other.m_number; }
28 void operator-=(
SequenceNumber other) { m_number -= other.m_number; }
void add(const id_type &) override
void remove(const id_type &) override
void increment(const id_type &) override
void add(const id_type &) override
void remove(const id_type &) override
counter_type counter(const id_type &) const override
counter_type counter(const id_type &) const override
void remove(const id_type &) override
void add(const id_type &) override
void increment(const id_type &) override
virtual void increment(const id_type &id)=0
virtual void add(const id_type &id)=0
virtual void remove(const id_type &id)=0
virtual counter_type counter(const id_type &id) const =0