Javascript wrappers for LSM303AGR Sensor library

Dependencies:   LSM303AGR

Dependents:   ST_SENSOR_JS

Revision:
2:ddbdfca82832
Parent:
1:78c55e099d6c
Child:
3:d076984ee23b
--- a/LSM303AGR_JS.cpp	Mon Oct 23 16:41:41 2017 +0200
+++ b/LSM303AGR_JS.cpp	Wed Oct 25 14:00:26 2017 +0200
@@ -109,11 +109,11 @@
 
 /** Constructor
  * @brief     Initiaze the component.
- * @param i2c object of an helper class which handles the I2C peripheral
+ * @param devI2c object of an helper class which handles the DevI2C peripheral
  */
-LSM303AGR_JS::LSM303AGR_JS(I2C &i2c){
-	magnetometer = new LSM303AGRMagSensor (reinterpret_cast<DevI2C*>(&i2c));
-	accelerometer = new LSM303AGRAccSensor (reinterpret_cast<DevI2C*>(&i2c));
+LSM303AGR_JS::LSM303AGR_JS(DevI2C &devI2c){
+	magnetometer = new LSM303AGRMagSensor (&devI2c);
+	accelerometer = new LSM303AGRAccSensor (&devI2c);
 
 	magnetometer->init(NULL);
 	accelerometer->init(NULL);
@@ -159,9 +159,8 @@
  * @brief  Get the accleremeter reading from LSM303AGR
  * @retval Accleremeter value
  */
-int32_t *LSM303AGR_JS::get_accelerometer_axes(){
-	int32_t axes[3];
-  	accelerometer->get_x_axes(axes);
+int32_t *LSM303AGR_JS::get_accelerometer_axes(int32_t *axes){
+	accelerometer->get_x_axes(axes);
     printf("LSM303AGR [acc/mg]:        %6ld, %6ld, %6ld\r\n", axes[0], axes[1], axes[2]);
 	return axes;
 }
@@ -187,9 +186,8 @@
  * @brief  Get the Magnetometer reading from LSM303AGR
  * @retval Magnetometer value
  */
-int32_t *LSM303AGR_JS::get_magnetometer_axes(){
-	int32_t axes[3];
-    magnetometer->get_m_axes(axes);
+int32_t *LSM303AGR_JS::get_magnetometer_axes(int32_t *axes){
+	magnetometer->get_m_axes(axes);
     printf("LSM303AGR [mag/mgauss]:     %6ld, %6ld, %6ld\r\n", axes[0], axes[1], axes[2]);
     return axes;
 }