Params.hh
Go to the documentation of this file.
#pragma once
#include <vector>
#include <map>
class Params : public std::map<std::string, std::string> {
public:
// TODO Use static constexpr (see commsignia_layer.hh)
static const std::string& debug;
static const std::string& loopback;
static const std::string& mac_src;
static const std::string& mac_dst;
static const std::string& mac_bc;
static const std::string& eth_type;
static const std::string& beaconing;
static const std::string& station_type;
static const std::string& country;
static const std::string& type_of_address;
static const std::string& ssp;
static const std::string& its_aid;
static const std::string& gn_payload;
static const std::string& gn_next_header;
static const std::string& gn_header_type;
static const std::string& gn_header_sub_type;
static const std::string& gn_lifetime;
static const std::string& gn_traffic_class;
static const std::string& btp_type;
static const std::string& btp_payload;
static const std::string& btp_destination_port;
static const std::string& btp_info;
static const std::string& nic;
static const std::string& ll_address;
static const std::string& latitude;
static const std::string& longitude;
static const std::string& expiry;
static const std::string& device_mode;
static const std::string& secured_mode;
static const std::string& encrypted_mode;
static const std::string& enable_security_checks;
static const std::string& sec_db_path;
static const std::string& certificate;
static const std::string& hash;
static const std::string& signature;
static const std::string& cypher;
static const std::string& distanceA;
static const std::string& distanceB;
static const std::string& angle;
static const std::string& payload_type;
static const std::string& next_header;
static const std::string& header_type;
static const std::string& header_sub_type;
static const std::string& interface_id;
static const std::string& server;
static const std::string& port;
static const std::string& use_ssl;
Params() : std::map<std::string, std::string>() {};
explicit Params(const Params& p_params) : std::map<std::string, std::string>(p_params.begin(), p_params.end()) { };
virtual ~Params() { };
void log() const;
void log();
void reset();
static void convert(Params& p_param, const std::string p_parameters);
}; // End of class Params
Params::longitude
static const std::string & longitude
Test system Latitude parameter name.
Definition: Params.hh:52
Params::reset
void reset()
Reset the content of this instance.
Definition: Params.cc:118
Params::gn_header_sub_type
static const std::string & gn_header_sub_type
GeoNetworking HeaderType parameter name.
Definition: Params.hh:41
Params::enable_security_checks
static const std::string & enable_security_checks
To indicate to the lower layer to apply encryption on message exchanges as defined in IEEE 1609...
Definition: Params.hh:58
Params::sec_db_path
static const std::string & sec_db_path
To indicates if security check failures shall be treated as error or warning.
Definition: Params.hh:59
Params::latitude
static const std::string & latitude
Test system GeoNetworking LL-Address parameter name.
Definition: Params.hh:51
Params::its_aid
static const std::string & its_aid
SSP parameter name.
Definition: Params.hh:37
Params::encrypted_mode
static const std::string & encrypted_mode
To indicate to the lower layer to apply signature on message exchanges as defined in IEEE 1609...
Definition: Params.hh:57
Params::convert
static void convert(Params &p_param, const std::string p_parameters)
Create a new instance of a Params object by converting a list of ITS parameters in string format (t1=...
Definition: Params.cc:73
Params::~Params
virtual ~Params()
Default destructor.
Definition: Params.hh:96
Params::header_type
static const std::string & header_type
Upper layer settings.
Definition: Params.hh:71
Params::angle
static const std::string & angle
Test system GeoNetworking DistanceB parameter name.
Definition: Params.hh:66
Params::Params
Params()
Set to 1 to use SSL to communicate with the HTTP server. Default: false.
Definition: Params.hh:85
Params::nic
static const std::string & nic
BTP Info parameter name.
Definition: Params.hh:49
std
Params::header_sub_type
static const std::string & header_sub_type
Upper layer settings.
Definition: Params.hh:72
Params::gn_payload
static const std::string & gn_payload
ITS-AID parameter name.
Definition: Params.hh:38
Params::gn_next_header
static const std::string & gn_next_header
GeoNetworking Payload parameter name.
Definition: Params.hh:39
Params::gn_traffic_class
static const std::string & gn_traffic_class
GeoNetworking Lifetime parameter name.
Definition: Params.hh:43
Params::next_header
static const std::string & next_header
Tyoe of payload, value is the ITS Conatainer message identifier or omitted in case of unknown payload...
Definition: Params.hh:70
Params::hash
static const std::string & hash
The certificate identifier the Test System shall use. E.g. CERT_TS_A.
Definition: Params.hh:61
Params::use_ssl
static const std::string & use_ssl
Commsignia HTTP server port. Default: 80.
Definition: Params.hh:78
Params::server
static const std::string & server
Commsignia antenna selector.
Definition: Params.hh:76
Params::cypher
static const std::string & cypher
The signature algorithm the Test System shall use, authorised values are NISTP-256, BP-256 and BP-384. Default: NISTP-256.
Definition: Params.hh:63
Params::mac_dst
static const std::string & mac_dst
Source MAC address parameter name.
Definition: Params.hh:29
Params::type_of_address
static const std::string & type_of_address
Definition: Params.hh:35
Params::country
static const std::string & country
Definition: Params.hh:34
Params::interface_id
static const std::string & interface_id
Upper layer settings.
Definition: Params.hh:74
Params::device_mode
static const std::string & device_mode
Test system GeoNetworking Lifetime parameter name (in ms)
Definition: Params.hh:55
Params::mac_bc
static const std::string & mac_bc
Destination MAC address parameter name.
Definition: Params.hh:30
Params::gn_lifetime
static const std::string & gn_lifetime
GeoNetworking HeaderSubType parameter name.
Definition: Params.hh:42
Params::secured_mode
static const std::string & secured_mode
To indicate to the lower layer to act as a standalone device.
Definition: Params.hh:56
Params::btp_destination_port
static const std::string & btp_destination_port
BTP Payload parameter name.
Definition: Params.hh:46
Params::loopback
static const std::string & loopback
Set to 1 to enable the debug mode.
Definition: Params.hh:26
Params::distanceB
static const std::string & distanceB
Test system GeoNetworking DistanceA parameter name.
Definition: Params.hh:65
Params::gn_header_type
static const std::string & gn_header_type
GeoNetworking NextHeader parameter name.
Definition: Params.hh:40
Params
This class provides basic functionalities for an ITS dictionary.
Definition: Params.hh:21
Params::log
void log() const
Provides a dump of the content of this instance.
Definition: Params.hh:96
Params::debug
static const std::string & debug
Definition: Params.hh:24
Params::signature
static const std::string & signature
The digest algorithm the Test System shall use, authorised values are SHA-256 or SHA-384. Default: SHA-256.
Definition: Params.hh:62
Params::beaconing
static const std::string & beaconing
Ethernet type parameter name.
Definition: Params.hh:32
Params::btp_type
static const std::string & btp_type
GeoNetworking Traffic class parameter name.
Definition: Params.hh:44
Params::expiry
static const std::string & expiry
Test system Longitude parameter name.
Definition: Params.hh:53
Params::payload_type
static const std::string & payload_type
Test system GeoNetworking Angle parameter name.
Definition: Params.hh:68
Params::station_type
static const std::string & station_type
Beaconing mode parameter name.
Definition: Params.hh:33
Params::port
static const std::string & port
HTTP server address (e.g. www.etsi.org)
Definition: Params.hh:77
Params::mac_src
static const std::string & mac_src
Definition: Params.hh:28
Params::certificate
static const std::string & certificate
Path to the folder containing certificates.
Definition: Params.hh:60
Params::distanceA
static const std::string & distanceA
The encryption algorithm the Test System shall use, authorised values are NISTP-256 and BP-256...
Definition: Params.hh:64
Params::ssp
static const std::string & ssp
Definition: Params.hh:36
Params::btp_info
static const std::string & btp_info
BTP DestinationPort parameter name.
Definition: Params.hh:47
Params::eth_type
static const std::string & eth_type
Broadcast MAC address parameter name.
Definition: Params.hh:31
Params::Params
Params(const Params &p_params)
Copy constructor Clone an existing instance of a Params object.
Definition: Params.hh:91
Params::ll_address
static const std::string & ll_address
Network Interface Card parameter name.
Definition: Params.hh:50
Params::btp_payload
static const std::string & btp_payload
BTP Type parameter name.
Definition: Params.hh:45