mirror of
https://github.com/eclipse/upm.git
synced 2025-03-15 04:57:30 +03:00
java: fix Java return types in ADXL355
Signed-off-by: Petre <petre.p.eftime@intel.com> Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
parent
2455938691
commit
4f30959a43
@ -72,6 +72,15 @@ void ADXL335::values(int *xVal, int *yVal, int *zVal)
|
||||
*zVal = mraa_aio_read(m_aioZ);
|
||||
}
|
||||
|
||||
#ifdef SWIGJAVA
|
||||
int *ADXL335::values()
|
||||
{
|
||||
int *v = new int[3];
|
||||
values(&v[0], &v[1], &v[2]);
|
||||
return v;
|
||||
}
|
||||
#endif
|
||||
|
||||
void ADXL335::acceleration(float *xAccel, float *yAccel, float *zAccel)
|
||||
{
|
||||
int x, y, z;
|
||||
@ -87,6 +96,15 @@ void ADXL335::acceleration(float *xAccel, float *yAccel, float *zAccel)
|
||||
*zAccel = (zVolts - m_zeroZ) / ADXL335_SENSITIVITY;
|
||||
}
|
||||
|
||||
#ifdef SWIGJAVA
|
||||
float *ADXL335::acceleration()
|
||||
{
|
||||
float *v = new float[3];
|
||||
acceleration(&v[0], &v[1], &v[2]);
|
||||
return v;
|
||||
}
|
||||
#endif
|
||||
|
||||
void ADXL335::calibrate()
|
||||
{
|
||||
// make sure the sensor is still before running calibration.
|
||||
|
@ -105,6 +105,15 @@ namespace upm {
|
||||
*/
|
||||
void values(int *xVal, int *yVal, int *zVal);
|
||||
|
||||
#ifdef SWIGJAVA
|
||||
/**
|
||||
* Gets the analog values for the 3 axes
|
||||
*
|
||||
* @return Array containing value of X, Y, Z axes
|
||||
*/
|
||||
int *values();
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Gets the acceleration along all 3 axes
|
||||
*
|
||||
@ -114,6 +123,15 @@ namespace upm {
|
||||
*/
|
||||
void acceleration(float *xAccel, float *yAccel, float *zAccel);
|
||||
|
||||
#ifdef SWIGJAVA
|
||||
/**
|
||||
* Gets the acceleration along all 3 axes
|
||||
*
|
||||
* @return Array containing acceleration on X, Y, Z axes
|
||||
*/
|
||||
float *acceleration();
|
||||
#endif
|
||||
|
||||
/**
|
||||
* While the sensor is still, measures the X-axis, Y-axis, and Z-axis
|
||||
* values and uses those values as the zero values.
|
||||
|
@ -10,4 +10,34 @@
|
||||
#include "adxl335.h"
|
||||
%}
|
||||
|
||||
%typemap(jni) float* "jfloatArray"
|
||||
%typemap(jstype) float* "float[]"
|
||||
%typemap(jtype) float* "float[]"
|
||||
|
||||
%typemap(javaout) float* {
|
||||
return $jnicall;
|
||||
}
|
||||
|
||||
%typemap(out) float *acceleration {
|
||||
$result = JCALL1(NewFloatArray, jenv, 3);
|
||||
JCALL4(SetFloatArrayRegion, jenv, $result, 0, 3, $1);
|
||||
}
|
||||
|
||||
%typemap(jni) int* "jintArray"
|
||||
%typemap(jstype) int* "int[]"
|
||||
%typemap(jtype) int* "int[]"
|
||||
|
||||
%typemap(javaout) int* {
|
||||
return $jnicall;
|
||||
}
|
||||
|
||||
%typemap(out) int *values {
|
||||
$result = JCALL1(NewIntArray, jenv, 3);
|
||||
JCALL4(SetIntArrayRegion, jenv, $result, 0, 3, (const signed int*)$1);
|
||||
delete [] $1;
|
||||
}
|
||||
|
||||
%ignore values(int *, int *, int *);
|
||||
%ignore acceleration(float *, float *, float *);
|
||||
|
||||
%include "adxl335.h"
|
||||
|
Loading…
x
Reference in New Issue
Block a user