20 namespace duds {
namespace hardware {
namespace interface {
103 typedef boost::error_info<
104 struct Info_DigitalPinNumericOutput,
111 typedef boost::error_info<
112 struct Info_DigitalPinNumericBits,
139 namespace DigitalPinRejectedConfiguration {
212 UnsupportedDirection | UnsupportedInputPull | UnsupportedEvent |
219 typedef boost::error_info<
220 struct Info_DigitalPinRejectedConfiguration,
224 typedef boost::error_info<
225 struct Info_DigitalPinRejectedConfigurationVector,
233 inline std::ostream &operator<<(std::ostream &os, const Reason &r) {
234 return os << (int)(r.flags());
An attempt was made to output a number in binary on a set of pins that was too small to represent the...
A required DigitalPort object was not supplied.
Indicates that mutually exclusive option flags were set for pin interrupts.
boost::error_info< struct Info_DigitalPinNumericBits, int > DigitalPinNumericBits
The number of bits available for a numeric output.
constexpr Reason UnsupportedOutput
The requested output configuration is not supported by the hardware or driver.
boost::error_info< struct Info_DigitalPinNumericOutput, std::int64_t > DigitalPinNumericOutput
The requested number to output; seen with DigitalPinNumericRangeError exceptions. ...
constexpr Reason BadEffect
The referenced pin's requested configuration either implied a disallowed change of another pin's conf...
The requested operation is not supported by the specific pin.
constexpr Reason Unsupported
Completely unsupported.
constexpr Reason UnsupportedInputPull
The requested pull up or pull down configuration is not supported by the hardware or driver...
Indicates that mutually exclusive option flags were set for pin events.
Indicates that mutually exclusive option flags were set for pull ups or downs.
constexpr Reason UnspecifiedError
There is an unspecified error with the requested pin configuration for the referenced pin that is not...
The provided DigitalPort object lacks a required pin.
boost::error_info< struct Info_DigitalPinRejectedConfiguration, Reason > ReasonInfo
Allows attaching the configuration rejection flags to an exception.
Indicates an error with the digital pin's configuration.
Indicates that mutually exclusive option flags were set for pin output drive.
constexpr Reason NotRejected
There is no error with the requested pin configuration for the referenced pin.
constexpr Reason AffectsOthers
The requested pin configuration for the referenced pin affects multiple pins in a manner that was not...
Indicates that mutually exclusive option flags were set for pin direction.
constexpr Reason UnsupportedDirection
The I/O direction configuration is not supported by the hardware or driver.
The provided DigitalPort object has a pin it is explicitly required to not have.
A type-safe bit flag storage class.
constexpr Reason UnsupportedEvent
The event pin configuration is not supported by the hardware or driver.
Indicates that the specified configuration data includes too many or too few items, or has parallel data structures of inconsistent sizes.
Indicates that a request to configure a pin to output was made of a pin that cannot output...
Indicates that both the maximum and minimum output current were specified, and the maximum is less th...
Indicates that an operation specified more than one configuration for a pin.
duds::general::BitFlags< struct DigitalPinConfigErrorFlags, std::uint8_t > Reason
A set of bit flags for storing pin configuration errors.
constexpr Reason UnsupportedInterrupt
The requested interrupt configuration is not supported by the hardware or driver. ...
constexpr Reason WronglyAffected
The requested configuration of another pin implied a change to the referenced pin's configuration...
A requested operation or configuration is not supported.
Base exception type for all errors about pins.
Various errors involving the use of GPIO hardware.
boost::error_info< struct Info_DigitalPinRejectedConfigurationVector, std::vector< Reason >> ReasonVectorInfo