java: Use Runnables instead of IsrCallbacks in Java

Signed-off-by: Petre Eftime <petre.p.eftime@intel.com>
Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
Petre Eftime
2015-12-23 17:47:26 +02:00
committed by Mihai Tudor Panu
parent e1c66c351a
commit 2cd043c2a1
35 changed files with 96 additions and 162 deletions

View File

@ -1,13 +1,8 @@
%module(directors="1") javaupm_mma7660
%module javaupm_mma7660
%include "../upm.i"
%include "cpointer.i"
%include "typemaps.i"
%feature("director") IsrCallback;
SWIG_DIRECTOR_OWNED(IsrCallback)
%ignore generic_callback_isr;
%include "../IsrCallback.h"
%apply int *OUTPUT { int *x, int *y, int *z };
%apply float *OUTPUT { float *ax, float *ay, float *az };
@ -58,4 +53,4 @@ SWIG_DIRECTOR_OWNED(IsrCallback)
System.exit(1);
}
}
%}
%}

View File

@ -207,9 +207,9 @@ bool MMA7660::tiltShake()
}
#ifdef JAVACALLBACK
void MMA7660::installISR(int pin, IsrCallback *cb)
void MMA7660::installISR(int pin, jobject runnable)
{
installISR(pin, generic_callback_isr, cb);
installISR(pin, mraa_java_isr_callback, runnable);
}
#endif

View File

@ -27,10 +27,6 @@
#include <mraa/i2c.h>
#include <mraa/gpio.h>
#if defined(SWIGJAVA) || defined(JAVACALLBACK)
#include "../IsrCallback.h"
#endif
#define MMA7660_I2C_BUS 0
#define MMA7660_DEFAULT_I2C_ADDR 0x4c
@ -271,7 +267,7 @@ namespace upm {
* argument to the ISR.
*/
#if defined(SWIGJAVA) || defined(JAVACALLBACK)
void installISR(int pin, IsrCallback *cb);
void installISR(int pin, jobject runnable);
#else
void installISR(int pin, void (*isr)(void *), void *arg);
#endif