COMMS
Template library intended to help with implementation of communication protocols.
|
This file contains all the classes necessary to properly define message traits. More...
Go to the source code of this file.
Classes | |
struct | comms::traits::dispatch::LinearSwitch |
Tag class used to indicate linear switch dispatch. More... | |
struct | comms::traits::dispatch::Polymorphic |
Tag class used to indicate polymorphic dispatch. More... | |
struct | comms::traits::dispatch::StaticBinSearch |
Tag class used to indicate static binary search dispatch. More... | |
struct | comms::traits::units::Angle |
Tag class used to indicate angle value. More... | |
struct | comms::traits::units::Current |
Tag class used to indicate electrical current value. More... | |
struct | comms::traits::units::Distance |
Tag class used to indicate distance value. More... | |
struct | comms::traits::units::Frequency |
Tag class used to indicate frequency value. More... | |
struct | comms::traits::units::Memory |
Tag class used to indicate memory size value. More... | |
struct | comms::traits::units::Speed |
Tag class used to indicate speed value. More... | |
struct | comms::traits::units::Time |
Tag class used to indicate time value. More... | |
struct | comms::traits::units::Voltage |
Tag class used to indicate electrical voltage value. More... | |
Namespaces | |
namespace | comms |
Main namespace for all classes / functions of COMMS library. | |
namespace | comms::traits |
Namespace for various traits tag classes. | |
namespace | comms::traits::dispatch |
Namespace for various traits tag classes used in dispatch operations. | |
namespace | comms::traits::endian |
Namespace for traits tag classes used to specify serialisation endian. | |
namespace | comms::traits::units |
Namespace for various traits tag classes used in units conversion operations. | |
Typedefs | |
using | comms::traits::units::AmpsRatio = std::ratio< 1, 1 > |
Ratio for amperes. | |
using | comms::traits::endian::Big = util::traits::endian::Big |
Empty class used in traits to indicate Big Endian. | |
using | comms::traits::units::BytesRatio = std::ratio< 1, 1 > |
Ratio for bytes. | |
using | comms::traits::units::CentimetersPerSecondRatio = typename std::ratio_divide< CentimetersRatio, SecondsRatio >::type |
Ratio for centimeters / second. | |
using | comms::traits::units::CentimetersRatio = std::centi |
Ratio for centimeters. | |
using | comms::traits::units::DaysRatio = std::ratio< 24L *60 *60 > |
Ratio for days. | |
using | comms::traits::units::DegreesRatio = std::ratio< 1, 1 > |
Ratio for degrees. | |
using | comms::traits::units::GigabytesRatio = std::ratio< 1024ULL *1024 *1024, 1 > |
Ratio for gigabytes. | |
using | comms::traits::units::GigaHzRatio = std::giga |
Ratio for gigahertz. | |
using | comms::traits::units::HoursRatio = std::ratio< 60 *60 > |
Ratio for hours. | |
using | comms::traits::units::HzRatio = std::ratio< 1, 1 > |
Ratio for hertz. | |
using | comms::traits::units::KiloampsRatio = std::kilo |
Ratio for kiloamperes. | |
using | comms::traits::units::KilobytesRatio = std::ratio< 1024, 1 > |
Ratio for kilobytes. | |
using | comms::traits::units::KiloHzRatio = std::kilo |
Ratio for kilohertz. | |
using | comms::traits::units::KilometersPerHourRatio = typename std::ratio_divide< KilometersRatio, HoursRatio >::type |
Ratio for kilometers / hour. | |
using | comms::traits::units::KilometersPerSecondRatio = typename std::ratio_divide< KilometersRatio, SecondsRatio >::type |
Ratio for kilometers / second. | |
using | comms::traits::units::KilometersRatio = std::kilo |
Ratio for kilometers. | |
using | comms::traits::units::KilovoltsRatio = std::kilo |
Ratio for kilovolts. | |
using | comms::traits::endian::Little = util::traits::endian::Little |
Empty class used in traits to indicate Little Endian. | |
using | comms::traits::units::MegabytesRatio = std::ratio< 1024UL *1024, 1 > |
Ratio for megabytes. | |
using | comms::traits::units::MegaHzRatio = std::mega |
Ratio for megahertz. | |
using | comms::traits::units::MetersPerSecondRatio = typename std::ratio_divide< MetersRatio, SecondsRatio >::type |
Ratio for meters / second. | |
using | comms::traits::units::MetersRatio = std::ratio< 1, 1 > |
Ratio for meters. | |
using | comms::traits::units::MicroampsRatio = std::micro |
Ratio for microamperes. | |
using | comms::traits::units::MicrometersPerSecondRatio = typename std::ratio_divide< MicrometersRatio, SecondsRatio >::type |
Ratio for micrometers / second. | |
using | comms::traits::units::MicrometersRatio = std::micro |
Ratio for micrometers. | |
using | comms::traits::units::MicrosecondsRatio = std::micro |
Ratio for microseconds. | |
using | comms::traits::units::MicrovoltsRatio = std::micro |
Ratio for microvolts. | |
using | comms::traits::units::MilliampsRatio = std::milli |
Ratio for milliamperes. | |
using | comms::traits::units::MillimetersPerSecondRatio = typename std::ratio_divide< MillimetersRatio, SecondsRatio >::type |
Ratio for millimeters / second. | |
using | comms::traits::units::MillimetersRatio = std::milli |
Ratio for millimeters. | |
using | comms::traits::units::MillisecondsRatio = std::milli |
Ratio for milliseconds. | |
using | comms::traits::units::MillivoltsRatio = std::milli |
Ratio for millivolts. | |
using | comms::traits::units::MinutesRatio = std::ratio< 60 > |
Ratio for minutes. | |
using | comms::traits::units::NanoampsRatio = std::nano |
Ratio for nanoamperes. | |
using | comms::traits::units::NanometersPerSecondRatio = typename std::ratio_divide< NanometersRatio, SecondsRatio >::type |
Ratio for nanometers / second. | |
using | comms::traits::units::NanometersRatio = std::nano |
Ratio for nanometers. | |
using | comms::traits::units::NanosecondsRatio = std::nano |
Ratio for nanoseconds. | |
using | comms::traits::units::NanovoltsRatio = std::nano |
Ratio for nanovolts. | |
using | comms::traits::units::RadiansRatio = std::ratio< 180, 1 > |
Ratio for radians. | |
using | comms::traits::units::SecondsRatio = std::ratio< 1, 1 > |
Ratio for seconds. | |
using | comms::traits::units::TerabytesRatio = std::ratio< 1024ULL *1024 *1024 *1024, 1 > |
Ratio for terabytes. | |
using | comms::traits::units::VoltsRatio = std::ratio< 1, 1 > |
Ratio for volts. | |
using | comms::traits::units::WeeksRatio = std::ratio< 7L *24 *60 *60 > |
Ratio for weeks. | |
This file contains all the classes necessary to properly define message traits.