hpx/serialization/input_container.hpp

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx
namespace serialization
template<typename Container>
struct input_container : public hpx::serialization::erased_input_container

Public Functions

input_container(Container const &cont, std::size_t inbound_data_size)
input_container(Container const &cont, std::vector<serialization_chunk> const *chunks, std::size_t inbound_data_size)
void set_filter(binary_filter *filter)
void set_zero_copy_serialization_threshold(std::size_t zero_copy_serialization_threshold)
void load_binary(void *address, std::size_t count)
void load_binary_chunk(void *address, std::size_t count)

Public Members

Container const &cont_
std::size_t current_
std::unique_ptr<binary_filter> filter_
std::size_t decompressed_size_
std::size_t zero_copy_serialization_threshold_
std::vector<serialization_chunk> const *chunks_
std::size_t current_chunk_
std::size_t current_chunk_size_

Private Types

template<>
using access_traits = traits::serialization_access_data<Container>

Private Functions

std::size_t get_chunk_size(std::size_t chunk) const
chunk_type get_chunk_type(std::size_t chunk) const
chunk_data get_chunk_data(std::size_t chunk) const
std::size_t get_num_chunks() const