DUDS
Distributed Update of Data from Something
PinErrors.hpp
Go to the documentation of this file.
1 /*
2  * This file is part of the DUDS project. It is subject to the BSD-style
3  * license terms in the LICENSE file found in the top-level directory of this
4  * distribution and at https://github.com/jjackowski/duds/blob/master/LICENSE.
5  * No part of DUDS, including this file, may be copied, modified, propagated,
6  * or distributed except according to the terms contained in the LICENSE file.
7  *
8  * Copyright (C) 2017 Jeff Jackowski
9  */
16 #include <duds/general/Errors.hpp>
17 
18 namespace duds { namespace hardware { namespace interface {
19 
26 struct PinError : virtual std::exception, virtual boost::exception { };
27 
34 
39 
45 
50 struct PinRangeError : PinError { };
51 
58 struct PinInUse : PinError { };
59 
65 
71 
77 
82 
89 typedef boost::error_info<struct Info_PinName, std::string> PinErrorName;
90 
97 typedef boost::error_info<struct Info_PinId, unsigned int> PinErrorId;
98 
107 typedef boost::error_info<struct Info_PinPortId, unsigned int> PinErrorPortId;
108 
109 } } } // namespaces
110 
An I/O error prevented the operation on the pin from succeeding.
Definition: PinErrors.hpp:33
boost::error_info< struct Info_PinName, std::string > PinErrorName
A name or function associated with the pin(s).
Definition: PinErrors.hpp:89
The operation has too few or much data to work on the pins, which can alternately be stated as having...
Definition: PinErrors.hpp:50
A request was made to access zero pins.
Definition: PinErrors.hpp:81
The requested operation is not supported by the specific pin.
Definition: PinErrors.hpp:38
A pin required for the operation does not exist or is unavailable to the process. ...
Definition: PinErrors.hpp:70
boost::error_info< struct Info_PinId, unsigned int > PinErrorId
The pin global ID involved in the error.
Definition: PinErrors.hpp:97
An attempt was made to use a DigitalPinSetAccess object with two different DigitalPort objects...
Definition: PinErrors.hpp:76
A request to add a pin to a DigitalPort cannot be fullfilled because the port already has a pin with ...
Definition: PinErrors.hpp:64
boost::error_info< struct Info_PinPortId, unsigned int > PinErrorPortId
The port (hardware) specific pin ID involved in the error.
Definition: PinErrors.hpp:107
A general I/O error.
Definition: Errors.hpp:95
A DigitalPinAccess or DigitalPinSetAccess object cannot be obtained because one already exists with a...
Definition: PinErrors.hpp:58
The requested operation requires the use of the wrong, or not the current, I/O direction.
Definition: PinErrors.hpp:44
Base exception type for all errors about pins.
Definition: PinErrors.hpp:26
General errors.