# 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_wheelencoder', [dirname(__file__)])
except ImportError:
import _pyupm_wheelencoder
return _pyupm_wheelencoder
if fp is not None:
try:
_mod = imp.load_module('_pyupm_wheelencoder', fp, pathname, description)
finally:
fp.close()
return _mod
_pyupm_wheelencoder = swig_import_helper()
del swig_import_helper
else:
import _pyupm_wheelencoder
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_wheelencoder.getVersion()
getVersion = _pyupm_wheelencoder.getVersion
[docs]class WheelEncoder(_object):
"""
API for the DFRobot Wheel Encoder.
ID: wheelencoder
Name: Wheel Encoder
Category: other
Manufacturer: dfrobot
Link:http://www.dfrobot.com/index.php?route=product/product&product_id=98
Connection: gpio This sensor was developed for the DFRobot Wheel
Encoder, though it could be used for any counting time-based task.
When you instantiate a class of this type, the gpio pin specified is
connected to an interrupt. Whenever a low to high transition occurs on
the gpio pin, the internal counter is incremented by one.
This class also includes a millisecond counter, so that you can
correlate the number of counts to a time period for calculating an RPM
or other value as needed.
C++ includes: wheelencoder.hpp
"""
__swig_setmethods__ = {}
__setattr__ = lambda self, name, value: _swig_setattr(self, WheelEncoder, name, value)
__swig_getmethods__ = {}
__getattr__ = lambda self, name: _swig_getattr(self, WheelEncoder, name)
__repr__ = _swig_repr
def __init__(self, pin):
"""
WheelEncoder(int pin)
DFRobot Wheel Encoder sensor constructor
Parameters:
-----------
pin: Digital pin to use
"""
this = _pyupm_wheelencoder.new_WheelEncoder(pin)
try:
self.this.append(this)
except Exception:
self.this = this
__swig_destroy__ = _pyupm_wheelencoder.delete_WheelEncoder
__del__ = lambda self: None
[docs] def getMillis(self):
"""
uint32_t
getMillis()
Returns the number of milliseconds elapsed since initClock() was last
called.
Elapsed milliseconds
"""
return _pyupm_wheelencoder.WheelEncoder_getMillis(self)
[docs] def initClock(self):
"""
void initClock()
Resets the clock
"""
return _pyupm_wheelencoder.WheelEncoder_initClock(self)
[docs] def clearCounter(self):
"""
void
clearCounter()
Resets the counter to 0. The counter should be stopped via
stopCounter() prior to calling this function.
"""
return _pyupm_wheelencoder.WheelEncoder_clearCounter(self)
[docs] def startCounter(self):
"""
void
startCounter()
Starts the counter. This function will also clear the current count
and reset the clock.
"""
return _pyupm_wheelencoder.WheelEncoder_startCounter(self)
[docs] def stopCounter(self):
"""
void
stopCounter()
Stops the counter
"""
return _pyupm_wheelencoder.WheelEncoder_stopCounter(self)
[docs] def counter(self):
"""
uint32_t counter()
Gets the current counter value
counter value
"""
return _pyupm_wheelencoder.WheelEncoder_counter(self)
WheelEncoder_swigregister = _pyupm_wheelencoder.WheelEncoder_swigregister
WheelEncoder_swigregister(WheelEncoder)
# This file is compatible with both classic and new-style classes.