diff --git a/include/interfaces/iDistance.hpp b/include/interfaces/iDistance.hpp index c198dfdd..aac6da24 100644 --- a/include/interfaces/iDistance.hpp +++ b/include/interfaces/iDistance.hpp @@ -36,7 +36,7 @@ namespace upm { public: virtual ~iDistance() {} - virtual int getDistance() = 0; + virtual float getDistance() = 0; /** * Convert distance value from Cm(default) to one * of the following: diff --git a/src/groveultrasonic/groveultrasonic.cxx b/src/groveultrasonic/groveultrasonic.cxx index eb429c83..e53361a1 100644 --- a/src/groveultrasonic/groveultrasonic.cxx +++ b/src/groveultrasonic/groveultrasonic.cxx @@ -55,7 +55,7 @@ GroveUltraSonic::~GroveUltraSonic () { mraa_gpio_close (m_pinCtx); } -int +float GroveUltraSonic::getDistance () { // output trigger signal diff --git a/src/groveultrasonic/groveultrasonic.hpp b/src/groveultrasonic/groveultrasonic.hpp index c8adce04..0a35dcb7 100644 --- a/src/groveultrasonic/groveultrasonic.hpp +++ b/src/groveultrasonic/groveultrasonic.hpp @@ -81,7 +81,7 @@ class GroveUltraSonic { * Divide by 58 to convert distance to centimetres. * Divide by 148 to convert distance to inches. */ - int getDistance (); + float getDistance (); /** * Return name of the component diff --git a/src/hcsr04/hcsr04.cxx b/src/hcsr04/hcsr04.cxx index 2560e944..47d0b112 100644 --- a/src/hcsr04/hcsr04.cxx +++ b/src/hcsr04/hcsr04.cxx @@ -50,7 +50,7 @@ HCSR04::getDistance(HCSR04_U unit) return hcsr04_get_distance(m_hcsr04, unit); } -int +float HCSR04::getDistance() { return getDistance(HCSR04_CM); diff --git a/src/hcsr04/hcsr04.hpp b/src/hcsr04/hcsr04.hpp index e1c55dcf..ca9aa89e 100644 --- a/src/hcsr04/hcsr04.hpp +++ b/src/hcsr04/hcsr04.hpp @@ -76,7 +76,7 @@ class HCSR04 : virtual public iDistance { * * @return distance measured in cm. */ - virtual int getDistance(); + float getDistance(); private: hcsr04_context m_hcsr04; HCSR04(const HCSR04& src) { /* do not create copied constructor */ } diff --git a/src/lidarlitev3/lidarlitev3.cxx b/src/lidarlitev3/lidarlitev3.cxx index a615d42e..0f37e3f6 100644 --- a/src/lidarlitev3/lidarlitev3.cxx +++ b/src/lidarlitev3/lidarlitev3.cxx @@ -46,7 +46,7 @@ LIDARLITEV3::LIDARLITEV3 (int bus, int devAddr) : m_i2ControlCtx(bus) { } } -int +float LIDARLITEV3::getDistance () { if(i2cWriteReg(ACQ_COMMAND, 0x04) < 0) diff --git a/src/lidarlitev3/lidarlitev3.hpp b/src/lidarlitev3/lidarlitev3.hpp index 9be5f944..2947d4bb 100644 --- a/src/lidarlitev3/lidarlitev3.hpp +++ b/src/lidarlitev3/lidarlitev3.hpp @@ -110,7 +110,7 @@ class LIDARLITEV3 : virtual public iDistance { * Returns distance measurement on success * Retruns -1 on failure. */ - virtual int getDistance (); + virtual float getDistance (); /** * Read diff --git a/src/maxsonarez/maxsonarez.cxx b/src/maxsonarez/maxsonarez.cxx index 4a7d3419..0cea47df 100644 --- a/src/maxsonarez/maxsonarez.cxx +++ b/src/maxsonarez/maxsonarez.cxx @@ -63,7 +63,7 @@ int MAXSONAREZ::inches() return int(volts / m_vI); } -int MAXSONAREZ::getDistance() +float MAXSONAREZ::getDistance() { - return (inches() * 2.54); + return inches() * 2.54; } diff --git a/src/maxsonarez/maxsonarez.hpp b/src/maxsonarez/maxsonarez.hpp index e652fb74..65464d09 100644 --- a/src/maxsonarez/maxsonarez.hpp +++ b/src/maxsonarez/maxsonarez.hpp @@ -96,7 +96,7 @@ namespace upm { * * @return Distance to the object in inches */ - virtual int getDistance(); + virtual float getDistance(); private: mraa_aio_context m_aio; diff --git a/src/mb704x/mb704x.cxx b/src/mb704x/mb704x.cxx index 5eb344c3..98d078d1 100644 --- a/src/mb704x/mb704x.cxx +++ b/src/mb704x/mb704x.cxx @@ -48,7 +48,7 @@ int MB704X::getRange() return mb704x_get_range(m_mb704x); } -int MB704X::getDistance() +float MB704X::getDistance() { return getRange(); } diff --git a/src/mb704x/mb704x.hpp b/src/mb704x/mb704x.hpp index 679fbcc9..f88fcced 100644 --- a/src/mb704x/mb704x.hpp +++ b/src/mb704x/mb704x.hpp @@ -90,7 +90,7 @@ namespace upm { * * @return Distance to the object in cm */ - virtual int getDistance(); + virtual float getDistance(); protected: // mb704x device context mb704x_context m_mb704x; diff --git a/src/ultrasonic/ultrasonic.cxx b/src/ultrasonic/ultrasonic.cxx index 51070e33..7a290da0 100644 --- a/src/ultrasonic/ultrasonic.cxx +++ b/src/ultrasonic/ultrasonic.cxx @@ -55,7 +55,7 @@ UltraSonic::~UltraSonic () { mraa_gpio_close (m_pinCtx); } -int +float UltraSonic::getDistance () { // output trigger signal diff --git a/src/ultrasonic/ultrasonic.hpp b/src/ultrasonic/ultrasonic.hpp index f30a37eb..1b82c67e 100644 --- a/src/ultrasonic/ultrasonic.hpp +++ b/src/ultrasonic/ultrasonic.hpp @@ -80,7 +80,7 @@ class UltraSonic { * Divide by 58 to convert distance to centimetres. * Divide by 148 to convert distance to inches. */ - int getDistance (); + float getDistance (); /** * Return name of the component @@ -93,7 +93,7 @@ class UltraSonic { /** * Returns true while the sensor is busy waiting for the echo pulse */ - bool working() + float working() { return m_doWork; } diff --git a/src/urm37/urm37.cxx b/src/urm37/urm37.cxx index c7fcbc6d..ec021048 100644 --- a/src/urm37/urm37.cxx +++ b/src/urm37/urm37.cxx @@ -67,7 +67,7 @@ float URM37::getDistance(int degrees) return (distance); } -int URM37::getDistance() +float URM37::getDistance() { /* TODO: compilation issue for swig. switched original method to not use default zero parameter. */ return getDistance(0); diff --git a/src/urm37/urm37.hpp b/src/urm37/urm37.hpp index bca87c51..f1d3bba6 100644 --- a/src/urm37/urm37.hpp +++ b/src/urm37/urm37.hpp @@ -129,7 +129,7 @@ namespace upm { * * @return The measured distance in cm */ - virtual int getDistance(); + virtual float getDistance(); /** * Get the temperature measurement. This is only valid in UART mode.