fpmas 1.5
Static Public Member Functions | List of all members
fpmas::io::datapack::Serializer< std::map< K, T, Comp, Alloc > > Struct Template Reference

#include <datapack.h>

Static Public Member Functions

template<typename PackType >
static std::size_t size (const PackType &p, const std::map< K, T, Comp, Alloc > &map)
 
template<typename PackType >
static void to_datapack (PackType &pack, const std::map< K, T, Comp, Alloc > &map)
 
template<typename PackType >
static std::map< K, T, Comp, Alloc > from_datapack (const PackType &pack)
 

Detailed Description

template<typename K, typename T, typename Comp, typename Alloc>
struct fpmas::io::datapack::Serializer< std::map< K, T, Comp, Alloc > >

std::map Serializer specialization.

Serialization scheme
map.size() item_1.key item_1.value item_2.key item_2.value ... item_n.key item_n.value
Template Parameters
Kkey type
Tvalue type

Member Function Documentation

◆ size()

template<typename K , typename T , typename Comp , typename Alloc >
template<typename PackType >
static std::size_t fpmas::io::datapack::Serializer< std::map< K, T, Comp, Alloc > >::size ( const PackType &  p,
const std::map< K, T, Comp, Alloc > &  map 
)
inlinestatic

Returns the buffer size required to serialize the specified map, i.e. p.size<std::size_t>()+N where N is the sum of p.size(item) for each item in map.

◆ to_datapack()

template<typename K , typename T , typename Comp , typename Alloc >
template<typename PackType >
static void fpmas::io::datapack::Serializer< std::map< K, T, Comp, Alloc > >::to_datapack ( PackType &  pack,
const std::map< K, T, Comp, Alloc > &  map 
)
inlinestatic

Serializes map to pack.

Each item is serialized using the PackType::put(const std::pair<K, T>&) method.

Parameters
packdestination BasicObjectPack
mapmap to serialize

◆ from_datapack()

template<typename K , typename T , typename Comp , typename Alloc >
template<typename PackType >
static std::map< K, T, Comp, Alloc > fpmas::io::datapack::Serializer< std::map< K, T, Comp, Alloc > >::from_datapack ( const PackType &  pack)
inlinestatic

Unserializes a map from pack.

Each item of the map is unserialized using the PackType::get<std::pair<K, T>>() method.

Parameters
packsource BasicObjectPack
Returns
unserialized map

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