template<typename data_t, typename read_count_t, typename write_count_t>
modbus::block::sequential class

sequential block class

Template parameters
data_t data type
read_count_t
write_count_t

Public types

struct initializer_t

Constructors, destructors, conversion operators

sequential(const address_t& starting_address, size_type capacity = max_capacity, data_t default_value = 0) explicit noexcept
sequential(const initializer_t& initializer) explicit noexcept
sequential(const address_t& starting_address, const container_type& container) explicit noexcept

Public functions

auto ref(const address_t& address) -> data_reference override
auto ref(const address_t& address, size_type count) -> mutable_slice_type override
auto get(const address_t& address, const read_count_t& count) const -> slice_type override
auto get(const address_t& address) const -> const_data_reference override
void set(const address_t& address, const container_type& container) override
void set(const address_t& address, data_t value) override
void reset() override
auto capacity() const -> base<std::vector, data_t, read_count_t, write_count_t>::size_type override

Friends

template<typename ostream>
auto operator<<(ostream& os, const sequential& obj) -> ostream&

Function documentation

template<typename data_t, typename read_count_t, typename write_count_t>
modbus::block::sequential<data_t, read_count_t, write_count_t>::sequential(const address_t& starting_address, size_type capacity = max_capacity, data_t default_value = 0) explicit noexcept

Parameters
starting_address starting address of container
capacity max capacity of container
default_value default value of container

Sequential block constructor

sequential block

template<typename data_t, typename read_count_t, typename write_count_t>
modbus::block::sequential<data_t, read_count_t, write_count_t>::sequential(const initializer_t& initializer) explicit noexcept

Parameters
initializer sequential block initializer

Sequential block constructor

template<typename data_t, typename read_count_t, typename write_count_t>
modbus::block::sequential<data_t, read_count_t, write_count_t>::sequential(const address_t& starting_address, const container_type& container) explicit noexcept

Parameters
starting_address starting address of container
container container initializer

Sequential block constructor

template<typename data_t, typename read_count_t, typename write_count_t>
data_reference modbus::block::sequential<data_t, read_count_t, write_count_t>::ref(const address_t& address) override

Parameters
address look-up address
Returns reference of single data from container

Get reference of single data from container

template<typename data_t, typename read_count_t, typename write_count_t>
mutable_slice_type modbus::block::sequential<data_t, read_count_t, write_count_t>::ref(const address_t& address, size_type count) override

Parameters
address look-up address
count number of slice
Returns pair of mutable iterator (begin and end) slice of data from container

Get reference of data from container

template<typename data_t, typename read_count_t, typename write_count_t>
slice_type modbus::block::sequential<data_t, read_count_t, write_count_t>::get(const address_t& address, const read_count_t& count) const override

Parameters
address starting address
count number of slice
Returns pair of iterator (begin and end) slice of data from container

Get slice of data from container

template<typename data_t, typename read_count_t, typename write_count_t>
const_data_reference modbus::block::sequential<data_t, read_count_t, write_count_t>::get(const address_t& address) const override

Parameters
address starting address
Returns single value from container

Get single value from container

template<typename data_t, typename read_count_t, typename write_count_t>
void modbus::block::sequential<data_t, read_count_t, write_count_t>::set(const address_t& address, const container_type& container) override

Parameters
address starting address
container container to add

Set slice of data from container

template<typename data_t, typename read_count_t, typename write_count_t>
void modbus::block::sequential<data_t, read_count_t, write_count_t>::set(const address_t& address, data_t value) override

Parameters
address starting address
value value to add

Set single data to container at specific address

template<typename data_t, typename read_count_t, typename write_count_t>
void modbus::block::sequential<data_t, read_count_t, write_count_t>::reset() override

Reset container

template<typename data_t, typename read_count_t, typename write_count_t>
base<std::vector, data_t, read_count_t, write_count_t>::size_type modbus::block::sequential<data_t, read_count_t, write_count_t>::capacity() const override

Returns capacity

Get capacity

template<typename data_t, typename read_count_t, typename write_count_t> template<typename ostream>
ostream& operator<<(ostream& os, const sequential& obj)

Parameters
os ostream
obj sequential instance
Returns stream

Ostream operator