Vanetza
 
Loading...
Searching...
No Matches
cbf_packet_identifier.hpp
1#ifndef CBF_PACKET_IDENTIFIER_HPP_HC6PLCML
2#define CBF_PACKET_IDENTIFIER_HPP_HC6PLCML
3
4#include <vanetza/geonet/address.hpp>
5#include <vanetza/geonet/sequence_number.hpp>
6#include <functional>
7#include <tuple>
8
9namespace vanetza
10{
11namespace geonet
12{
13
14class CbfPacket;
15
16using CbfPacketIdentifier = std::tuple<Address, SequenceNumber>;
17CbfPacketIdentifier identifier(const CbfPacket&);
18CbfPacketIdentifier identifier(const Address&, SequenceNumber);
19
20} // namespace geonet
21} // namespace vanetza
22
23namespace std
24{
25/// std::hash specialization for CbfPacketIdentifier
26template<> struct hash<vanetza::geonet::CbfPacketIdentifier>
27{
28 size_t operator()(const vanetza::geonet::CbfPacketIdentifier&) const;
29};
30} // namespace std
31
32#endif /* CBF_PACKET_IDENTIFIER_HPP_HC6PLCML */
33
STL namespace.