# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.8
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.
from sys import version_info
if version_info >= (2, 6, 0):
def swig_import_helper():
from os.path import dirname
import imp
fp = None
try:
fp, pathname, description = imp.find_module('_pyupm_mmc35240', [dirname(__file__)])
except ImportError:
import _pyupm_mmc35240
return _pyupm_mmc35240
if fp is not None:
try:
_mod = imp.load_module('_pyupm_mmc35240', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_mmc35240 = swig_import_helper()
del swig_import_helper
else:
import _pyupm_mmc35240
del version_info
try:
_swig_property = property
except NameError:
pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
if (name == "thisown"):
return self.this.own(value)
if (name == "this"):
if type(value).__name__ == 'SwigPyObject':
self.__dict__[name] = value
return
method = class_type.__swig_setmethods__.get(name, None)
if method:
return method(self, value)
if (not static):
if _newclass:
object.__setattr__(self, name, value)
else:
self.__dict__[name] = value
else:
raise AttributeError("You cannot add attributes to %s" % self)
def _swig_setattr(self, class_type, name, value):
return _swig_setattr_nondynamic(self, class_type, name, value, 0)
def _swig_getattr_nondynamic(self, class_type, name, static=1):
if (name == "thisown"):
return self.this.own()
method = class_type.__swig_getmethods__.get(name, None)
if method:
return method(self)
if (not static):
return object.__getattr__(self, name)
else:
raise AttributeError(name)
def _swig_getattr(self, class_type, name):
return _swig_getattr_nondynamic(self, class_type, name, 0)
def _swig_repr(self):
try:
strthis = "proxy of " + self.this.__repr__()
except Exception:
strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
try:
_object = object
_newclass = 1
except AttributeError:
class _object:
pass
_newclass = 0
def getVersion():
return _pyupm_mmc35240.getVersion()
getVersion = _pyupm_mmc35240.getVersion
_pyupm_mmc35240.MAGN_DS_SIZE_swigconstant(_pyupm_mmc35240)
MAGN_DS_SIZE = _pyupm_mmc35240.MAGN_DS_SIZE
[docs]class MMC35240(_object):
"""
MMC35240 Tri-axis Magnetic Sensor API.
ID: mmc35240
Name: MMC35240 Tri-axis Magnetic Sensor
Category: compass
Manufacturer: Memsic
Connection: iio i2c The MMC3524xPJ is a complete 3-axis magnetic
sensor
C++ includes: mmc35240.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, MMC35240, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, MMC35240, name)
__repr__ = _swig_repr
def __init__(self, device):
"""
MMC35240(int device)
MMC35240 Tri-axis Magnetic Sensor
Parameters:
-----------
device: iio device number
"""
this = _pyupm_mmc35240.new_MMC35240(device)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_mmc35240.delete_MMC35240
__del__ = lambda self: None
[docs] def installISR(self, isr, arg):
"""
void
installISR(void(*isr)(char *, void *), void *arg)
Installs an interrupt service routine (ISR) to be called when an
interrupt occurs
Parameters:
-----------
isr: Pointer to a function to be called on interrupt
arg: Pointer to an object to be supplied as an argument to the ISR.
"""
return _pyupm_mmc35240.MMC35240_installISR(self, isr, arg)
[docs] def getChannelValue(self, input, chan):
"""
int64_t
getChannelValue(unsigned char *input, mraa_iio_channel *chan)
Extract the channel value based on channel type
Parameters:
-----------
input: Channel data
chan: MRAA iio-layer channel info
"""
return _pyupm_mmc35240.MMC35240_getChannelValue(self, input, chan)
[docs] def enableBuffer(self, length):
"""
bool
enableBuffer(int length)
Enable trigger buffer
Parameters:
-----------
length: buffer length in integer
"""
return _pyupm_mmc35240.MMC35240_enableBuffer(self, length)
[docs] def disableBuffer(self):
"""
bool
disableBuffer()
Disable trigger buffer
"""
return _pyupm_mmc35240.MMC35240_disableBuffer(self)
[docs] def setScale(self, scale):
"""
bool setScale(const
float scale)
Set scale
Parameters:
-----------
scale: in float Kernel driver does not support changing the value of
scale on run-time Default scale is 0.001000
"""
return _pyupm_mmc35240.MMC35240_setScale(self, scale)
[docs] def setSamplingFrequency(self, sampling_frequency):
"""
bool
setSamplingFrequency(const float sampling_frequency)
Set sampling frequency
Parameters:
-----------
sampling_frequency: sampling frequency in float Available sampling
frequency are 1.5, 13, 25, 50 Default sampling frequency is 1.500000
"""
return _pyupm_mmc35240.MMC35240_setSamplingFrequency(self, sampling_frequency)
[docs] def enable3AxisChannel(self):
"""
bool
enable3AxisChannel()
Enable 3 axis scan element
"""
return _pyupm_mmc35240.MMC35240_enable3AxisChannel(self)
[docs] def getCalibratedLevel(self):
"""
int
getCalibratedLevel()
Get calibrated level
"""
return _pyupm_mmc35240.MMC35240_getCalibratedLevel(self)
[docs] def initCalibrate(self):
"""
void
initCalibrate()
Reset calibration data and start collect calibration data again
"""
return _pyupm_mmc35240.MMC35240_initCalibrate(self)
[docs] def getCalibratedData(self, cal_level, offset, w_invert, bfield):
"""
void
getCalibratedData(int *cal_level, double offset[3][1], double
w_invert[3][3], double *bfield)
Get calibrated data
"""
return _pyupm_mmc35240.MMC35240_getCalibratedData(self, cal_level, offset, w_invert, bfield)
[docs] def loadCalibratedData(self, cal_level, offset, w_invert, bfield):
"""
void
loadCalibratedData(int cal_level, double offset[3][1], double
w_invert[3][3], double bfield)
Load calibrated data
"""
return _pyupm_mmc35240.MMC35240_loadCalibratedData(self, cal_level, offset, w_invert, bfield)
MMC35240_swigregister = _pyupm_mmc35240.MMC35240_swigregister
MMC35240_swigregister(MMC35240)
# This file is compatible with both classic and new-style classes.