|
COMMS
Template library intended to help with implementation of communication protocols.
|
Contains functions for raw data access / (de)serialization. More...
#include "comms/CompileControl.h"#include "comms/details/tag.h"#include "comms/util/type_traits.h"#include <cstddef>#include <cstdint>#include <iterator>#include <limits>#include <type_traits>Go to the source code of this file.
Classes | |
| struct | comms::util::traits::endian::Big |
| Empty class used in traits to indicate Big Endian. More... | |
| struct | comms::util::traits::endian::Little |
| Empty class used in traits to indicate Little Endian. More... | |
Namespaces | |
| namespace | comms |
| Main namespace for all classes / functions of COMMS library. | |
| namespace | comms::util |
| Namespace for various utility classes and/or functions used by COMMS library. | |
| namespace | comms::util::traits |
| Namespace for various utilities related trait classes. | |
| namespace | comms::util::traits::endian |
| Namespace for utilities related endian definition trait classes. | |
Functions | |
| template<typename T , std::size_t TSize, typename TIter > | |
| T | comms::util::readBig (TIter &iter) |
| Read part of integral value from the input area using big endian notation. | |
| template<typename T , typename TIter > | |
| T | comms::util::readBig (TIter &iter) |
| Read integral value from the input area using big endian notation. | |
| template<typename T , typename TIter > | |
| T | comms::util::readBig (TIter &iter, std::size_t size) |
| Read integral value from the input area using big endian notation. | |
| template<typename T , typename TIter > | |
| T | comms::util::readData (TIter &iter, const traits::endian::Big &endian) |
| Same as readBig<T, TIter>() | |
| template<typename T , std::size_t TSize, typename TIter > | |
| T | comms::util::readData (TIter &iter, const traits::endian::Big &endian) |
| Same as readBig<T, TSize, TIter>() | |
| template<typename T , typename TIter > | |
| T | comms::util::readData (TIter &iter, const traits::endian::Little &endian) |
| Same as readLittle<T, TIter>() | |
| template<typename T , std::size_t TSize, typename TIter > | |
| T | comms::util::readData (TIter &iter, const traits::endian::Little &endian) |
| Same as readData<T, TSize, TIter>() | |
| template<typename T , typename TIter > | |
| T | comms::util::readData (TIter &iter, std::size_t size, const traits::endian::Big &endian) |
| Same as readBig<T, TIter>() | |
| template<typename T , typename TIter > | |
| T | comms::util::readData (TIter &iter, std::size_t size, const traits::endian::Little &endian) |
| Same as readBig<T, TIter>() | |
| template<typename T , std::size_t TSize, typename TIter > | |
| T | comms::util::readLittle (TIter &iter) |
| Read part of integral value from the input area using little endian notation. | |
| template<typename T , typename TIter > | |
| T | comms::util::readLittle (TIter &iter) |
| Read integral value from the input area using little endian notation. | |
| template<typename T , typename TIter > | |
| T | comms::util::readLittle (TIter &iter, std::size_t size) |
| Read integral value from the input area using little endian notation. | |
| template<typename T , typename TIter > | |
| void | comms::util::writeBig (T value, std::size_t size, TIter &iter) |
| Write part of integral value into the output area using big endian notation. | |
| template<std::size_t TSize, typename T , typename TIter > | |
| void | comms::util::writeBig (T value, TIter &iter) |
| Write part of integral value into the output area using big endian notation. | |
| template<typename T , typename TIter > | |
| void | comms::util::writeBig (T value, TIter &iter) |
| Write integral value into the output area using big endian notation. | |
| template<typename T , typename TIter > | |
| void | comms::util::writeData (T value, std::size_t size, TIter &iter, const traits::endian::Big &endian) |
| Same as writeBig<T, TIter>() | |
| template<typename T , typename TIter > | |
| void | comms::util::writeData (T value, std::size_t size, TIter &iter, const traits::endian::Little &endian) |
| Same as writeLittle<T, TIter>() | |
| template<typename T , typename TIter > | |
| void | comms::util::writeData (T value, TIter &iter, const traits::endian::Big &endian) |
| Same as writeBig<T, TIter>() | |
| template<std::size_t TSize, typename T , typename TIter > | |
| void | comms::util::writeData (T value, TIter &iter, const traits::endian::Big &endian) |
| Same as writeBig<TSize, T, TIter>() | |
| template<typename T , typename TIter > | |
| void | comms::util::writeData (T value, TIter &iter, const traits::endian::Little &endian) |
| Same as writeLittle<T, TIter>() | |
| template<std::size_t TSize, typename T , typename TIter > | |
| void | comms::util::writeData (T value, TIter &iter, const traits::endian::Little &endian) |
| Same as writeLittle<TSize, T, TIter>() | |
| template<typename T , typename TIter > | |
| void | comms::util::writeLittle (T value, std::size_t size, TIter &iter) |
| Write part of integral value into the output area using little endian notation. | |
| template<std::size_t TSize, typename T , typename TIter > | |
| void | comms::util::writeLittle (T value, TIter &iter) |
| Write part of integral value into the output area using little endian notation. | |
| template<typename T , typename TIter > | |
| void | comms::util::writeLittle (T value, TIter &iter) |
| Write integral value into the output area using big endian notation. | |
Contains functions for raw data access / (de)serialization.