From 0af62a6992897d574901a6cabb33c8342effaf08 Mon Sep 17 00:00:00 2001 From: Jon Trulson Date: Thu, 10 Sep 2015 12:40:06 -0600 Subject: [PATCH] isd1820: throw exception(s) on fatal errors Signed-off-by: Jon Trulson Signed-off-by: Mihai Tudor Panu --- src/isd1820/isd1820.cxx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/isd1820/isd1820.cxx b/src/isd1820/isd1820.cxx index 51388d77..29aed20d 100644 --- a/src/isd1820/isd1820.cxx +++ b/src/isd1820/isd1820.cxx @@ -23,6 +23,8 @@ */ #include +#include +#include #include "isd1820.h" @@ -33,7 +35,8 @@ ISD1820::ISD1820(int playPin, int recPin) { if ( !(m_gpioPlay = mraa_gpio_init(playPin)) ) { - cerr << __FUNCTION__ << ": mraa_gpio_init() failed" << endl; + throw std::invalid_argument(std::string(__FUNCTION__) + + ": mraa_gpio_init(playPin) failed, invalid pin?"); return; } @@ -41,7 +44,8 @@ ISD1820::ISD1820(int playPin, int recPin) if ( !(m_gpioRec = mraa_gpio_init(recPin)) ) { - cerr << __FUNCTION__ << ": mraa_gpio_init() failed" << endl; + throw std::invalid_argument(std::string(__FUNCTION__) + + ": mraa_gpio_init(recPin) failed, invalid pin?"); return; }