Vanetza
Loading...
Searching...
No Matches
vanetza::geonet::Lifetime Class Reference
Inheritance diagram for vanetza::geonet::Lifetime:

Public Types

enum class  Base { Fifty_Milliseconds = 0 , One_Second = 1 , Ten_Seconds = 2 , Hundred_Seconds = 3 }

Public Member Functions

 Lifetime (Base base, BitNumber< uint8_t, 6 > multiplier)
void set (Base base, BitNumber< uint8_t, 6 > multiplier)
uint8_t raw () const
void raw (uint8_t raw)
bool operator< (const Lifetime &) const
bool operator== (const Lifetime &) const
units::Duration decode () const
void encode (units::Duration)

Static Public Member Functions

static const Lifetime zero ()

Static Public Attributes

static constexpr uint8_t multiplier_mask = 0xFC
static constexpr uint8_t base_mask = 0x03

Private Attributes

uint8_t m_lifetime

Detailed Description

Definition at line 15 of file lifetime.hpp.

Member Enumeration Documentation

◆ Base

enum class vanetza::geonet::Lifetime::Base
strong

Definition at line 21 of file lifetime.hpp.

Constructor & Destructor Documentation

◆ Lifetime() [1/2]

vanetza::geonet::Lifetime::Lifetime ( )

Definition at line 17 of file lifetime.cpp.

◆ Lifetime() [2/2]

vanetza::geonet::Lifetime::Lifetime ( Base base,
BitNumber< uint8_t, 6 > multiplier )

Definition at line 22 of file lifetime.cpp.

Member Function Documentation

◆ decode()

units::Duration vanetza::geonet::Lifetime::decode ( ) const

Decodes stored lifetime

Returns
lifetime as duration quantity

Definition at line 59 of file lifetime.cpp.

◆ encode()

void vanetza::geonet::Lifetime::encode ( units::Duration duration)

Encode duration in lifetime object

Note
Precision loss might occur
Parameters
durationLifetime duration

Definition at line 45 of file lifetime.cpp.

◆ operator<()

bool vanetza::geonet::Lifetime::operator< ( const Lifetime & other) const

Definition at line 32 of file lifetime.cpp.

◆ operator==()

bool vanetza::geonet::Lifetime::operator== ( const Lifetime & other) const

Definition at line 37 of file lifetime.cpp.

◆ raw() [1/2]

uint8_t vanetza::geonet::Lifetime::raw ( ) const
inline

Definition at line 33 of file lifetime.hpp.

◆ raw() [2/2]

void vanetza::geonet::Lifetime::raw ( uint8_t raw)
inline

Definition at line 34 of file lifetime.hpp.

◆ set()

void vanetza::geonet::Lifetime::set ( Base base,
BitNumber< uint8_t, 6 > multiplier )

Definition at line 27 of file lifetime.cpp.

◆ zero()

const Lifetime vanetza::geonet::Lifetime::zero ( )
static

Definition at line 12 of file lifetime.cpp.

Member Data Documentation

◆ base_mask

uint8_t vanetza::geonet::Lifetime::base_mask = 0x03
staticconstexpr

Definition at line 19 of file lifetime.hpp.

◆ m_lifetime

uint8_t vanetza::geonet::Lifetime::m_lifetime
private

Definition at line 53 of file lifetime.hpp.

◆ multiplier_mask

uint8_t vanetza::geonet::Lifetime::multiplier_mask = 0xFC
staticconstexpr

Definition at line 18 of file lifetime.hpp.


The documentation for this class was generated from the following files: