Libosmium: osmium::CRC< TCRC > Class Template Reference

Libosmium Fast and flexible C++ library for working with OpenStreetMap data

Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
osmium::CRC< TCRC > Class Template Reference

`#include <crc.hpp>`

## Public Member Functions
TCRC & | operator() () noexcept
const TCRC & | operator() () const noexcept
void | update_bool (const bool value) noexcept
void | update_int8 (const uint8_t value) noexcept
void | update_int16 (const uint16_t value) noexcept
void | update_int32 (const uint32_t value) noexcept
void | update_int64 (const uint64_t value) noexcept
void | update_string (const char *str) noexcept
void | update (const Timestamp &timestamp) noexcept
void | update (const osmium::Location &location) noexcept
void | update (const osmium::Box &box) noexcept
void | update (const NodeRef &node_ref) noexcept
void | update (const NodeRefList &node_refs) noexcept
void | update (const TagList &tags) noexcept
void | update (const osmium::RelationMember &member) noexcept
void | update (const osmium::RelationMemberList &members) noexcept
void | update (const osmium::OSMObject &object) noexcept
void | update (const osmium::Node &node) noexcept
void | update (const osmium::Way &way) noexcept
void | update (const osmium::Relation &relation) noexcept
void | update (const osmium::Area &area) noexcept
void | update (const osmium::ChangesetDiscussion &discussion) noexcept
void | update (const osmium::Changeset &changeset) noexcept

## Private Attributes
TCRC | m_crc

## Detailed Description

template<typename TCRC>
class osmium::CRC< TCRC >

Framework for computing a checksum from OSM data. This class must be instantiated with a policy class that does the actual CRC calculations. It must have the process_byte(), process_bytes(), and checksum() member functions implemented according to the description in Boost (https://www.boost.org/doc/libs/release/libs/crc/crc.html).

Typically you will either use the boost::crc_32_type from the Boost CRC library or the osmium::CRC_zlib class which uses the zlib library for this, but other checksums are possible.

Template Parameters

  TCRC | A CRC type.

## Member Function Documentation

## ◆ operator()() [1/2]

template<typename TCRC>

const TCRC & osmium::CRC< TCRC >::operator() | ( |  | ) | const
| inlinenoexcept

## ◆ operator()() [2/2]

template<typename TCRC>

TCRC & osmium::CRC< TCRC >::operator() | ( |  | ) |
| inlinenoexcept

## ◆ update() [1/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const NodeRef & | node_ref | ) |
| inlinenoexcept

## ◆ update() [2/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const NodeRefList & | node_refs | ) |
| inlinenoexcept

## ◆ update() [3/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Area & | area | ) |
| inlinenoexcept

## ◆ update() [4/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Box & | box | ) |
| inlinenoexcept

## ◆ update() [5/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Changeset & | changeset | ) |
| inlinenoexcept

## ◆ update() [6/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::ChangesetDiscussion & | discussion | ) |
| inlinenoexcept

## ◆ update() [7/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Location & | location | ) |
| inlinenoexcept

## ◆ update() [8/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Node & | node | ) |
| inlinenoexcept

## ◆ update() [9/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::OSMObject & | object | ) |
| inlinenoexcept

## ◆ update() [10/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Relation & | relation | ) |
| inlinenoexcept

## ◆ update() [11/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::RelationMember & | member | ) |
| inlinenoexcept

## ◆ update() [12/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::RelationMemberList & | members | ) |
| inlinenoexcept

## ◆ update() [13/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const osmium::Way & | way | ) |
| inlinenoexcept

## ◆ update() [14/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const TagList & | tags | ) |
| inlinenoexcept

## ◆ update() [15/15]

template<typename TCRC>

void osmium::CRC< TCRC >::update | ( | const Timestamp & | timestamp | ) |
| inlinenoexcept

## ◆ update_bool()

template<typename TCRC>

void osmium::CRC< TCRC >::update_bool | ( | const bool | value | ) |
| inlinenoexcept

## ◆ update_int16()

template<typename TCRC>

void osmium::CRC< TCRC >::update_int16 | ( | const uint16_t | value | ) |
| inlinenoexcept

## ◆ update_int32()

template<typename TCRC>

void osmium::CRC< TCRC >::update_int32 | ( | const uint32_t | value | ) |
| inlinenoexcept

## ◆ update_int64()

template<typename TCRC>

void osmium::CRC< TCRC >::update_int64 | ( | const uint64_t | value | ) |
| inlinenoexcept

## ◆ update_int8()

template<typename TCRC>

void osmium::CRC< TCRC >::update_int8 | ( | const uint8_t | value | ) |
| inlinenoexcept

## ◆ update_string()

template<typename TCRC>

void osmium::CRC< TCRC >::update_string | ( | const char * | str | ) |
| inlinenoexcept

## Member Data Documentation

## ◆ m_crc

template<typename TCRC>

TCRC osmium::CRC< TCRC >::m_crc
| private

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

- include/osmium/osm/crc.hpp