1 #ifndef OSMIUM_UTIL_DELTA_HPP
2 #define OSMIUM_UTIL_DELTA_HPP
37 #include <type_traits>
64 swap(m_value, new_value);
65 return m_value - new_value;
95 template <
typename TBaseIterator,
typename TTransform,
typename TValue>
111 m_delta(m_trans(m_it)),
134 return m_it == rhs.
m_it && m_end == rhs.
m_end;
138 return !(*
this == rhs);
147 #endif // OSMIUM_UTIL_DELTA_HPP
bool operator==(const DeltaEncodeIterator &rhs) const
Definition: delta.hpp:133
DeltaEncodeIterator operator++(int)
Definition: delta.hpp:123
T update(T new_value)
Definition: delta.hpp:62
void clear()
Definition: delta.hpp:84
T m_value
Definition: delta.hpp:76
TValue value_type
Definition: delta.hpp:98
TBaseIterator m_end
Definition: delta.hpp:101
TTransform m_trans
Definition: delta.hpp:104
DeltaEncode< value_type > m_value
Definition: delta.hpp:103
T m_value
Definition: delta.hpp:50
value_type m_delta
Definition: delta.hpp:102
Namespace for everything in the Osmium library.
Definition: assembler.hpp:55
value_type operator*()
Definition: delta.hpp:129
DeltaEncode(T value=0)
Definition: delta.hpp:54
DeltaEncodeIterator(TBaseIterator first, TBaseIterator last, TTransform &trans)
Definition: delta.hpp:108
TBaseIterator m_it
Definition: delta.hpp:100
DeltaEncodeIterator & operator++()
Definition: delta.hpp:116
DeltaDecode()
Definition: delta.hpp:80
T update(T delta)
Definition: delta.hpp:88
void clear()
Definition: delta.hpp:58
bool operator!=(const DeltaEncodeIterator &rhs) const
Definition: delta.hpp:137