ad_map_access
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
ad::map::landmark::LandmarkId Class Reference

DataType LandmarkId. More...

#include <ad/map/landmark/LandmarkId.hpp>

Public Member Functions

 LandmarkId ()
 default constructor More...
 
_AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ LandmarkId (uint64_t const iLandmarkId)
 standard constructor More...
 
 LandmarkId (const LandmarkId &other)=default
 standard copy constructor
 
 LandmarkId (LandmarkId &&other)=default
 standard move constructor
 
LandmarkIdoperator= (const LandmarkId &other)=default
 standard assignment operator More...
 
LandmarkIdoperator= (LandmarkId &&other)=default
 standard move operator More...
 
bool operator== (const LandmarkId &other) const
 standard comparison operator More...
 
bool operator!= (const LandmarkId &other) const
 standard comparison operator More...
 
bool operator> (const LandmarkId &other) const
 standard comparison operator More...
 
bool operator< (const LandmarkId &other) const
 standard comparison operator More...
 
bool operator>= (const LandmarkId &other) const
 standard comparison operator More...
 
bool operator<= (const LandmarkId &other) const
 standard comparison operator More...
 
LandmarkId operator+ (const LandmarkId &other) const
 standard arithmetic operator More...
 
LandmarkIdoperator+= (const LandmarkId &other)
 standard arithmetic operator More...
 
LandmarkId operator- (const LandmarkId &other) const
 standard arithmetic operator More...
 
LandmarkId operator-= (const LandmarkId &other)
 standard arithmetic operator More...
 
_AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ operator uint64_t () const
 conversion to base type: uint64_t More...
 
bool isValid () const
 
void ensureValid () const
 ensure that the LandmarkId is valid More...
 
void ensureValidNonZero () const
 ensure that the LandmarkId is valid and non zero More...
 

Static Public Member Functions

static LandmarkId getMin ()
 get minimum valid LandmarkId (i.e. cMinValue)
 
static LandmarkId getMax ()
 get maximum valid LandmarkId (i.e. cMaxValue)
 

Static Public Attributes

static const uint64_t cMinValue
 constant defining the minimum valid LandmarkId value (used in isValid())
 
static const uint64_t cMaxValue
 constant defining the maximum valid LandmarkId value (used in isValid())
 

Detailed Description

DataType LandmarkId.

Identifier of a landmark The unit is: Identifier

Constructor & Destructor Documentation

◆ LandmarkId() [1/2]

ad::map::landmark::LandmarkId::LandmarkId ( )
inline

default constructor

The default value of LandmarkId is: std::numeric_limits<uint64_t>::quiet_NaN()

◆ LandmarkId() [2/2]

_AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ ad::map::landmark::LandmarkId::LandmarkId ( uint64_t const  iLandmarkId)
inline

standard constructor

Note
_AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ defines, if only an explicit conversion is allowed.

Member Function Documentation

◆ ensureValid()

void ad::map::landmark::LandmarkId::ensureValid ( ) const
inline

ensure that the LandmarkId is valid

Throws an std::out_of_range() exception if the LandmarkId in not valid (i.e. isValid() returns false)

◆ ensureValidNonZero()

void ad::map::landmark::LandmarkId::ensureValidNonZero ( ) const
inline

ensure that the LandmarkId is valid and non zero

Throws an std::out_of_range() exception if the LandmarkId in not valid or zero (i.e. isValid() returns false)

◆ isValid()

bool ad::map::landmark::LandmarkId::isValid ( ) const
inline
Returns
true if the LandmarkId in a valid range

An LandmarkId value is defined to be valid if:

◆ operator uint64_t()

_AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ ad::map::landmark::LandmarkId::operator uint64_t ( ) const
inline

conversion to base type: uint64_t

Note
the conversion to the base type removes the physical unit. _AD_MAP_LANDMARK_LANDMARKID_EXPLICIT_CONVERSION_ defines, if only explicit calls are allowed.

◆ operator!=()

bool ad::map::landmark::LandmarkId::operator!= ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId.
Returns
true if one of the LandmarkId is not valid or they can be taken as numerically different

◆ operator+()

LandmarkId ad::map::landmark::LandmarkId::operator+ ( const LandmarkId other) const
inline

standard arithmetic operator

Parameters
[in]otherOther LandmarkId
Returns
Result of arithmetic operation.
Note
throws a std::out_of_range exception if one of the two operands or the result of the operation is not valid

◆ operator+=()

LandmarkId& ad::map::landmark::LandmarkId::operator+= ( const LandmarkId other)
inline

standard arithmetic operator

Parameters
[in]otherOther LandmarkId
Returns
Result of arithmetic operation.
Note
throws a std::out_of_range exception if one of the two operands or the result of the operation is not valid

◆ operator-()

LandmarkId ad::map::landmark::LandmarkId::operator- ( const LandmarkId other) const
inline

standard arithmetic operator

Parameters
[in]otherOther LandmarkId
Returns
Result of arithmetic operation.
Note
throws a std::out_of_range exception if one of the two operands or the result of the operation is not valid

◆ operator-=()

LandmarkId ad::map::landmark::LandmarkId::operator-= ( const LandmarkId other)
inline

standard arithmetic operator

Parameters
[in]otherOther LandmarkId
Returns
Result of arithmetic operation.
Note
throws a std::out_of_range exception if one of the two operands or the result of the operation is not valid

◆ operator<()

bool ad::map::landmark::LandmarkId::operator< ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId.
Returns
true if both LandmarkId are valid and this LandmarkId is strictly numerically smaller than other.
Note
the precision of LandmarkId is considered

◆ operator<=()

bool ad::map::landmark::LandmarkId::operator<= ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId
Returns
true if both LandmarkId are valid and this LandmarkId is numerically smaller than other.
Note
the precision of LandmarkId is considered

◆ operator=() [1/2]

LandmarkId& ad::map::landmark::LandmarkId::operator= ( const LandmarkId other)
default

standard assignment operator

Parameters
[in]otherOther LandmarkId
Returns
Reference to this LandmarkId.

◆ operator=() [2/2]

LandmarkId& ad::map::landmark::LandmarkId::operator= ( LandmarkId &&  other)
default

standard move operator

Parameters
[in]otherOther LandmarkId
Returns
Reference to this LandmarkId.

◆ operator==()

bool ad::map::landmark::LandmarkId::operator== ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId
Returns
true if both LandmarkId are valid and can be taken as numerically equal

◆ operator>()

bool ad::map::landmark::LandmarkId::operator> ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId.
Returns
true if both LandmarkId are valid and this LandmarkId is strictly numerically greater than other.
Note
the precision of LandmarkId is considered

◆ operator>=()

bool ad::map::landmark::LandmarkId::operator>= ( const LandmarkId other) const
inline

standard comparison operator

Parameters
[in]otherOther LandmarkId.
Returns
true if both LandmarkId are valid and this LandmarkId is numerically greater than other.
Note
the precision of LandmarkId is considered

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