Vanetza
 
Loading...
Searching...
No Matches
sequence_number.cpp
1#include "sequence_number.hpp"
2
3namespace vanetza
4{
5namespace geonet
6{
7
8bool SequenceNumber::operator<(SequenceNumber other) const
9{
10 return ((other.m_number > m_number && other.m_number - m_number <= SequenceNumber::max/2) ||
11 (m_number > other.m_number && m_number - other.m_number > SequenceNumber::max/2));
12}
13
14SequenceNumber SequenceNumber::operator++(int)
15{
16 SequenceNumber tmp = *this;
17 ++m_number;
18 return tmp;
19}
20
21void serialize(const SequenceNumber& sn, OutputArchive& ar)
22{
23 serialize(host_cast(static_cast<SequenceNumber::value_type>(sn)), ar);
24}
25
26void deserialize(SequenceNumber& sn, InputArchive& ar)
27{
28 SequenceNumber::value_type tmp = 0;
29 deserialize(tmp, ar);
30 sn = SequenceNumber(tmp);
31}
32
33} // namespace geonet
34} // namespace vanetza
35