# 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_hmc5883l', [dirname(__file__)])
except ImportError:
import _pyupm_hmc5883l
return _pyupm_hmc5883l
if fp is not None:
try:
_mod = imp.load_module('_pyupm_hmc5883l', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_hmc5883l = swig_import_helper()
del swig_import_helper
else:
import _pyupm_hmc5883l
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_hmc5883l.getVersion()
getVersion = _pyupm_hmc5883l.getVersion
[docs]class int16Array(_object):
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, int16Array, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, int16Array, name)
__repr__ = _swig_repr
def __init__(self, nelements):
this = _pyupm_hmc5883l.new_int16Array(nelements)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_hmc5883l.delete_int16Array
__del__ = lambda self: None
def __getitem__(self, index):
return _pyupm_hmc5883l.int16Array___getitem__(self, index)
def __setitem__(self, index, value):
return _pyupm_hmc5883l.int16Array___setitem__(self, index, value)
[docs] def cast(self):
return _pyupm_hmc5883l.int16Array_cast(self)
__swig_getmethods__["frompointer"] = lambda x: _pyupm_hmc5883l.int16Array_frompointer
if _newclass:
frompointer = staticmethod(_pyupm_hmc5883l.int16Array_frompointer)
int16Array_swigregister = _pyupm_hmc5883l.int16Array_swigregister
int16Array_swigregister(int16Array)
def int16Array_frompointer(t):
return _pyupm_hmc5883l.int16Array_frompointer(t)
int16Array_frompointer = _pyupm_hmc5883l.int16Array_frompointer
[docs]class Hmc5883l(_object):
"""
API for the HMC5883L 3-Axis Digital Compass.
ID: hmc5883l
Name: 3-axis Digital Compass
Other Names: Grove 3-Axis Digital Compass
Category: compass
Manufacturer: seeed
Connection: i2c
Link:http://wiki.seeed.cc/Grove-3-Axis_Compass_V1.0/
Kit: robok HoneywellHMC5883L is a 3-axis digital compass.
Communication with HMC5883L is simple and all done through an I2C
interface. Different breakout boards are available. Typically, a 3V
supply is all that is needed to power the sensor.
C++ includes: hmc5883l.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, Hmc5883l, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, Hmc5883l, name)
__repr__ = _swig_repr
def __init__(self, bus):
"""
Hmc5883l(int bus)
Creates an Hmc5883l object. The I2C address cannot be changed, and is
always 0x1e (7-bit).
Parameters:
-----------
bus: I2C bus number
"""
this = _pyupm_hmc5883l.new_Hmc5883l(bus)
try:
self.this.append(this)
except Exception:
self.this = this
[docs] def direction(self):
"""float direction() """
return _pyupm_hmc5883l.Hmc5883l_direction(self)
[docs] def heading(self):
"""float heading() """
return _pyupm_hmc5883l.Hmc5883l_heading(self)
[docs] def coordinates(self):
"""
const int16_t *
coordinates()
Returns a pointer to an int[3] that contains the coordinates as ints
*int to an int[3]
"""
return _pyupm_hmc5883l.Hmc5883l_coordinates(self)
[docs] def update(self):
"""
upm_result_t update()
Updates the values by reading from I2C
0 if successful
"""
return _pyupm_hmc5883l.Hmc5883l_update(self)
[docs] def set_declination(self, dec):
"""
void
set_declination(float dec)
Sets the magnetic declination for better calibration
"""
return _pyupm_hmc5883l.Hmc5883l_set_declination(self, dec)
[docs] def get_declination(self):
"""
float
get_declination()
Gets the current magnetic declination value
Magnetic declination as a floating-point value
"""
return _pyupm_hmc5883l.Hmc5883l_get_declination(self)
__swig_destroy__ = _pyupm_hmc5883l.delete_Hmc5883l
__del__ = lambda self: None
Hmc5883l_swigregister = _pyupm_hmc5883l.Hmc5883l_swigregister
Hmc5883l_swigregister(Hmc5883l)
# This file is compatible with both classic and new-style classes.