adxl335: throw exception(s) on fatal errors

Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
Jon Trulson 2015-09-09 15:14:43 -06:00 committed by Mihai Tudor Panu
parent f84973b0e4
commit f86e812f13

View File

@ -26,6 +26,8 @@
*/
#include <iostream>
#include <string>
#include <stdexcept>
#include "adxl335.h"
@ -41,19 +43,22 @@ ADXL335::ADXL335(int pinX, int pinY, int pinZ, float aref)
if ( !(m_aioX = mraa_aio_init(pinX)) )
{
cerr << __FUNCTION__ << ": mraa_aio_init(X) failed" << endl;
throw std::invalid_argument(std::string(__FUNCTION__) +
": mraa_aio_init(X) failed, invalid pin?");
return;
}
if ( !(m_aioY = mraa_aio_init(pinY)) )
{
cerr << __FUNCTION__ << ": mraa_aio_init(Y) failed" << endl;
throw std::invalid_argument(std::string(__FUNCTION__) +
": mraa_aio_init(Y) failed, invalid pin?");
return;
}
if ( !(m_aioZ = mraa_aio_init(pinZ)) )
{
cerr << __FUNCTION__ << ": mraa_aio_init(Z) failed" << endl;
throw std::invalid_argument(std::string(__FUNCTION__) +
": mraa_aio_init(Z) failed, invalid pin?");
return;
}
}