Added iMagnetometer interface
Signed-off-by: Serban Waltter <serban.waltter@rinftech.com> Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
This commit is contained in:
committed by
Mihai Tudor Panu
parent
aa966946d5
commit
f28a6d2561
@@ -4,6 +4,7 @@ upm_mixed_module_init (NAME bmm150
|
||||
C_SRC bmm150.c
|
||||
CPP_HDR bmm150.hpp
|
||||
CPP_SRC bmm150.cxx
|
||||
IFACE_HDR iMagnetometer.hpp
|
||||
FTI_SRC bmm150_fti.c
|
||||
CPP_WRAPS_C
|
||||
REQUIRES mraa utilities-c)
|
||||
|
||||
@@ -96,9 +96,10 @@ void BMM150::getMagnetometer(float *x, float *y, float *z)
|
||||
|
||||
std::vector<float> BMM150::getMagnetometer()
|
||||
{
|
||||
update();
|
||||
float v[3];
|
||||
|
||||
getMagnetometer(&v[0], &v[1], &v[2]);
|
||||
bmm150_get_magnetometer(m_bmm150, &v[0], &v[1], &v[2]);
|
||||
return std::vector<float>(v, v+3);
|
||||
}
|
||||
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
#include <mraa/gpio.hpp>
|
||||
#include "bmm150.h"
|
||||
|
||||
#include <interfaces/iMagnetometer.hpp>
|
||||
|
||||
namespace upm {
|
||||
|
||||
/**
|
||||
@@ -73,7 +75,7 @@ namespace upm {
|
||||
* @snippet bmm150.cxx Interesting
|
||||
*/
|
||||
|
||||
class BMM150 {
|
||||
class BMM150: virtual public iMagnetometer {
|
||||
public:
|
||||
/**
|
||||
* BMM150 constructor.
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
#ifdef SWIGPYTHON
|
||||
%module (package="upm") bmi160
|
||||
#endif
|
||||
|
||||
%import "interfaces/interfaces.i"
|
||||
|
||||
%include "../common_top.i"
|
||||
|
||||
/* BEGIN Java syntax ------------------------------------------------------- */
|
||||
#ifdef SWIGJAVA
|
||||
%include "../upm_javastdvector.i"
|
||||
|
||||
%ignore getMagnetometer(float *, float *, float *);
|
||||
|
||||
%typemap(javaimports) SWIGTYPE %{
|
||||
import upm_interfaces.*;
|
||||
|
||||
import java.util.AbstractList;
|
||||
import java.lang.Float;
|
||||
%}
|
||||
|
||||
%ignore getMagnetometer(float *, float *, float *);
|
||||
|
||||
%typemap(javaout) SWIGTYPE {
|
||||
return new $&javaclassname($jnicall, true);
|
||||
}
|
||||
%typemap(javaout) std::vector<float> {
|
||||
return (AbstractList<Float>)(new $&javaclassname($jnicall, true));
|
||||
}
|
||||
%typemap(jstype) std::vector<float> "AbstractList<Float>"
|
||||
|
||||
%template(floatVector) std::vector<float>;
|
||||
|
||||
%ignore installISR (BMM150_INTERRUPT_PINS_T , int , mraa::Edge , void *, void *);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user