Libosmium  2.10.3
Fast and flexible C++ library for working with OpenStreetMap data
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
osmium::memory::Item Class Reference

#include <item.hpp>

Inheritance diagram for osmium::memory::Item:
Inheritance graph
[legend]
Collaboration diagram for osmium::memory::Item:
Collaboration graph
[legend]

Public Member Functions

unsigned char * next () noexcept
 
const unsigned char * next () const noexcept
 
item_size_type byte_size () const noexcept
 
item_size_type padded_size () const
 
item_type type () const noexcept
 
bool removed () const noexcept
 
void set_removed (bool removed) noexcept
 
diff_indicator_type diff () const noexcept
 
char diff_as_char () const noexcept
 
void set_diff (diff_indicator_type diff) noexcept
 

Protected Member Functions

 Item (item_size_type size=0, item_type type=item_type()) noexcept
 
 Item (const Item &)=delete
 
 Item (Item &&)=delete
 
Itemoperator= (const Item &)=delete
 
Itemoperator= (Item &&)=delete
 
Itemset_type (const item_type item_type) noexcept
 

Private Member Functions

Itemadd_size (const item_size_type size) noexcept
 

Private Attributes

item_size_type m_size
 
item_type m_type
 
uint16_t m_removed: 1
 
uint16_t m_diff: 2
 
uint16_t m_padding: 13
 

Friends

template<typename TMember >
class CollectionIterator
 
template<typename TMember >
class ItemIterator
 
class osmium::builder::Builder
 

Constructor & Destructor Documentation

§ Item() [1/3]

osmium::memory::Item::Item ( item_size_type  size = 0,
item_type  type = item_type() 
)
inlineexplicitprotectednoexcept

§ Item() [2/3]

osmium::memory::Item::Item ( const Item )
protecteddelete

§ Item() [3/3]

osmium::memory::Item::Item ( Item &&  )
protecteddelete

Member Function Documentation

§ add_size()

Item& osmium::memory::Item::add_size ( const item_size_type  size)
inlineprivatenoexcept

§ byte_size()

item_size_type osmium::memory::Item::byte_size ( ) const
inlinenoexcept

§ diff()

diff_indicator_type osmium::memory::Item::diff ( ) const
inlinenoexcept

§ diff_as_char()

char osmium::memory::Item::diff_as_char ( ) const
inlinenoexcept

§ next() [1/2]

unsigned char* osmium::memory::Item::next ( )
inlinenoexcept

§ next() [2/2]

const unsigned char* osmium::memory::Item::next ( ) const
inlinenoexcept

§ operator=() [1/2]

Item& osmium::memory::Item::operator= ( const Item )
protecteddelete

§ operator=() [2/2]

Item& osmium::memory::Item::operator= ( Item &&  )
protecteddelete

§ padded_size()

item_size_type osmium::memory::Item::padded_size ( ) const
inline

§ removed()

bool osmium::memory::Item::removed ( ) const
inlinenoexcept

§ set_diff()

void osmium::memory::Item::set_diff ( diff_indicator_type  diff)
inlinenoexcept

§ set_removed()

void osmium::memory::Item::set_removed ( bool  removed)
inlinenoexcept

§ set_type()

Item& osmium::memory::Item::set_type ( const item_type  item_type)
inlineprotectednoexcept

§ type()

item_type osmium::memory::Item::type ( ) const
inlinenoexcept

Friends And Related Function Documentation

§ CollectionIterator

template<typename TMember >
friend class CollectionIterator
friend

§ ItemIterator

template<typename TMember >
friend class ItemIterator
friend

§ osmium::builder::Builder

friend class osmium::builder::Builder
friend

Member Data Documentation

§ m_diff

uint16_t osmium::memory::Item::m_diff
private

§ m_padding

uint16_t osmium::memory::Item::m_padding
private

§ m_removed

uint16_t osmium::memory::Item::m_removed
private

§ m_size

item_size_type osmium::memory::Item::m_size
private

§ m_type

item_type osmium::memory::Item::m_type
private

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