Libosmium  2.22.0
Fast and flexible C++ library for working with OpenStreetMap data
Loading...
Searching...
No Matches
osmium::util::DeltaEncode< TValue, TDelta > Class Template Reference

#include <delta.hpp>

Collaboration diagram for osmium::util::DeltaEncode< TValue, TDelta >:

Public Types

using value_type = TValue
using delta_type = TDelta

Public Member Functions

 DeltaEncode (TValue value=0)
void clear () noexcept
TValue value () const noexcept
TDelta update (TValue new_value) noexcept

Private Attributes

DeltaEncode value type must be some integer
DeltaEncode delta type must be some signed integer
Delta type size should be larger or equal to value type size
TValue m_value

Detailed Description

template<typename TValue, typename TDelta = int64_t>
class osmium::util::DeltaEncode< TValue, TDelta >

Helper class for delta encoding.

Member Typedef Documentation

◆ delta_type

template<typename TValue, typename TDelta = int64_t>
using osmium::util::DeltaEncode< TValue, TDelta >::delta_type = TDelta

◆ value_type

template<typename TValue, typename TDelta = int64_t>
using osmium::util::DeltaEncode< TValue, TDelta >::value_type = TValue

Constructor & Destructor Documentation

◆ DeltaEncode()

template<typename TValue, typename TDelta = int64_t>
osmium::util::DeltaEncode< TValue, TDelta >::DeltaEncode ( TValue value = 0)
inlineexplicit

Member Function Documentation

◆ clear()

template<typename TValue, typename TDelta = int64_t>
void osmium::util::DeltaEncode< TValue, TDelta >::clear ( )
inlinenoexcept

◆ update()

template<typename TValue, typename TDelta = int64_t>
TDelta osmium::util::DeltaEncode< TValue, TDelta >::update ( TValue new_value)
inlinenoexcept

◆ value()

template<typename TValue, typename TDelta = int64_t>
TValue osmium::util::DeltaEncode< TValue, TDelta >::value ( ) const
inlinenoexcept

Member Data Documentation

◆ integer [1/2]

template<typename TValue, typename TDelta = int64_t>
DeltaEncode value type must be some osmium::util::DeltaEncode< TValue, TDelta >::integer
private

◆ integer [2/2]

template<typename TValue, typename TDelta = int64_t>
DeltaEncode delta type must be some signed osmium::util::DeltaEncode< TValue, TDelta >::integer
private

◆ m_value

template<typename TValue, typename TDelta = int64_t>
TValue osmium::util::DeltaEncode< TValue, TDelta >::m_value
private

◆ size

template<typename TValue, typename TDelta = int64_t>
Delta type size should be larger or equal to value type osmium::util::DeltaEncode< TValue, TDelta >::size
private

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