1#ifndef CAM_SSP_HPP_GGBE8KES
2#define CAM_SSP_HPP_GGBE8KES
4#include <vanetza/common/byte_buffer.hpp>
22enum class CamPermission : uint16_t
25 CEN_DSRC_Tolling_Zone = 0x80,
26 Public_Transport = 0x40,
27 Special_Transport = 0x20,
28 Dangerous_Goods = 0x10,
35 Closed_Lanes = 0x8000,
36 Request_For_Right_Of_Way = 0x4000,
37 Request_For_Free_Crossing_At_Traffic_Light = 0x2000,
39 No_Passing_For_Trucks = 0x0800,
53 CamPermissions(CamPermission);
54 CamPermissions(
const std::initializer_list<CamPermission>&);
57 bool has(CamPermission)
const;
58 bool has(
const std::initializer_list<CamPermission>&)
const;
59 bool has(
const CamPermissions&)
const;
69 CamPermissions& add(CamPermission);
70 CamPermissions& remove(CamPermission);
73 ByteBuffer encode()
const;
74 static CamPermissions decode(
const ByteBuffer&);
77 using value_type = std::underlying_type<CamPermission>::type;
86std::string stringify(CamPermission);
std::set< CamPermission > permissions() const