|
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.