From bbcee528802d8c13beabeefd333447bcb8c9e488 Mon Sep 17 00:00:00 2001 From: Serban Waltter Date: Thu, 21 Jun 2018 16:39:43 +0300 Subject: [PATCH] Added bindings for iHeartRate sensors. Signed-off-by: Serban Waltter Signed-off-by: Mihai Tudor Panu --- examples/java/iHeartRate_Example.java | 28 +++++++++++++++++++++++++++ src/ehr/CMakeLists.txt | 1 + src/ehr/ehr.i | 10 ++++++++++ src/groveehr/CMakeLists.txt | 1 + src/groveehr/groveehr.i | 10 ++++++++++ 5 files changed, 50 insertions(+) create mode 100644 examples/java/iHeartRate_Example.java diff --git a/examples/java/iHeartRate_Example.java b/examples/java/iHeartRate_Example.java new file mode 100644 index 00000000..ddcf0a8e --- /dev/null +++ b/examples/java/iHeartRate_Example.java @@ -0,0 +1,28 @@ +/** + * Author: Serban Waltter + */ + +import upm_new_interfaces.*; + +import java.util.ArrayList; + +import upm_ehr.*; +import upm_groveehr.*; + +/** + * iHeartRate_Example + */ +public class iHeartRate_Example { + + public static void main(String[] args) { + ArrayList sensors = new ArrayList(); + sensors.add(new EHR(2)); + sensors.add(new GroveEHR(3)); + + while (true) { + for (int i = 0; i < sensors.size(); i++) { + System.out.println("HR from sensor " + i + " is " + sensors.get(i).getHeartRate()); + } + } + } +} \ No newline at end of file diff --git a/src/ehr/CMakeLists.txt b/src/ehr/CMakeLists.txt index 5fc870d6..4c412805 100644 --- a/src/ehr/CMakeLists.txt +++ b/src/ehr/CMakeLists.txt @@ -2,4 +2,5 @@ upm_mixed_module_init (NAME ehr DESCRIPTION "Ear-clip Heart Rate Sensor" CPP_HDR ehr.hpp CPP_SRC ehr.cxx + IFACE_HDR iHeartRate.hpp REQUIRES mraa) diff --git a/src/ehr/ehr.i b/src/ehr/ehr.i index 25c63496..73a1293b 100644 --- a/src/ehr/ehr.i +++ b/src/ehr/ehr.i @@ -1,7 +1,17 @@ +#ifdef SWIGPYTHON +%module (package="pyupm_new_interfaces") ehr +#endif + +%import "interfaces/new_interfaces.i" + %include "../common_top.i" /* BEGIN Java syntax ------------------------------------------------------- */ #ifdef SWIGJAVA +%typemap(javaimports) SWIGTYPE %{ +import upm_new_interfaces.*; +%} + %ignore beatISR; JAVA_JNI_LOADLIBRARY(javaupm_ehr) diff --git a/src/groveehr/CMakeLists.txt b/src/groveehr/CMakeLists.txt index 39250e56..4a2a6333 100644 --- a/src/groveehr/CMakeLists.txt +++ b/src/groveehr/CMakeLists.txt @@ -2,4 +2,5 @@ set (libname "groveehr") set (libdescription "Ear-clip Heart Rate Sensor") set (module_src ${libname}.cxx) set (module_hpp ${libname}.hpp) +set (module_iface iHeartRate.hpp) upm_module_init(mraa) diff --git a/src/groveehr/groveehr.i b/src/groveehr/groveehr.i index b17c143f..7d9d4700 100644 --- a/src/groveehr/groveehr.i +++ b/src/groveehr/groveehr.i @@ -1,7 +1,17 @@ +#ifdef SWIGPYTHON +%module (package="pyupm_new_interfaces") ehr +#endif + +%import "interfaces/new_interfaces.i" + %include "../common_top.i" /* BEGIN Java syntax ------------------------------------------------------- */ #ifdef SWIGJAVA +%typemap(javaimports) SWIGTYPE %{ +import upm_new_interfaces.*; +%} + %ignore beatISR; JAVA_JNI_LOADLIBRARY(javaupm_groveehr)