# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.1
#
# 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 as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _odroid_wiringpi
else:
    import _odroid_wiringpi

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)



def wiringPiISR(pin, mode, PyFunc):
    return _odroid_wiringpi.wiringPiISR(pin, mode, PyFunc)

def wiringPiFindNode(pin):
    return _odroid_wiringpi.wiringPiFindNode(pin)

def wiringPiNewNode(pinBase, numPins):
    return _odroid_wiringpi.wiringPiNewNode(pinBase, numPins)

def wiringPiFailure(*args):
    return _odroid_wiringpi.wiringPiFailure(*args)

def msg(*args):
    return _odroid_wiringpi.msg(*args)

def moduleLoaded(arg1):
    return _odroid_wiringpi.moduleLoaded(arg1)

def setupCheck(fName):
    return _odroid_wiringpi.setupCheck(fName)

def usingGpiomemCheck(what):
    return _odroid_wiringpi.usingGpiomemCheck(what)

def setUsingGpiomem(value):
    return _odroid_wiringpi.setUsingGpiomem(value)

def setKernelVersion():
    return _odroid_wiringpi.setKernelVersion()

def cmpKernelVersion(*args):
    return _odroid_wiringpi.cmpKernelVersion(*args)

def wiringPiVersion(major, minor):
    return _odroid_wiringpi.wiringPiVersion(major, minor)

def wiringPiSetup():
    return _odroid_wiringpi.wiringPiSetup()

def wiringPiSetupSys():
    return _odroid_wiringpi.wiringPiSetupSys()

def wiringPiSetupGpio():
    return _odroid_wiringpi.wiringPiSetupGpio()

def wiringPiSetupPhys():
    return _odroid_wiringpi.wiringPiSetupPhys()

def setDrive(pin, value):
    return _odroid_wiringpi.setDrive(pin, value)

def getDrive(pin):
    return _odroid_wiringpi.getDrive(pin)

def getAlt(pin):
    return _odroid_wiringpi.getAlt(pin)

def getPUPD(pin):
    return _odroid_wiringpi.getPUPD(pin)

def pinMode(pin, mode):
    return _odroid_wiringpi.pinMode(pin, mode)

def pullUpDnControl(pin, pud):
    return _odroid_wiringpi.pullUpDnControl(pin, pud)

def digitalRead(pin):
    return _odroid_wiringpi.digitalRead(pin)

def digitalWrite(pin, value):
    return _odroid_wiringpi.digitalWrite(pin, value)

def digitalReadByte():
    return _odroid_wiringpi.digitalReadByte()

def pwmWrite(pin, value):
    return _odroid_wiringpi.pwmWrite(pin, value)

def analogRead(pin):
    return _odroid_wiringpi.analogRead(pin)

def piGpioLayout():
    return _odroid_wiringpi.piGpioLayout()

def piBoardId(model, rev, mem, maker, warranty):
    return _odroid_wiringpi.piBoardId(model, rev, mem, maker, warranty)

def wpiPinToGpio(wpiPin):
    return _odroid_wiringpi.wpiPinToGpio(wpiPin)

def physPinToGpio(physPin):
    return _odroid_wiringpi.physPinToGpio(physPin)

def pwmSetRange(range):
    return _odroid_wiringpi.pwmSetRange(range)

def pwmSetClock(divisor):
    return _odroid_wiringpi.pwmSetClock(divisor)

def waitForInterrupt(pin, mS):
    return _odroid_wiringpi.waitForInterrupt(pin, mS)

def wiringPiISRCancel(pin):
    return _odroid_wiringpi.wiringPiISRCancel(pin)

def piThreadCreate(fn):
    return _odroid_wiringpi.piThreadCreate(fn)

def piLock(key):
    return _odroid_wiringpi.piLock(key)

def piUnlock(key):
    return _odroid_wiringpi.piUnlock(key)

def piHiPri(pri):
    return _odroid_wiringpi.piHiPri(pri)

def delay(howLong):
    return _odroid_wiringpi.delay(howLong)

def delayMicroseconds(howLong):
    return _odroid_wiringpi.delayMicroseconds(howLong)

def millis():
    return _odroid_wiringpi.millis()

def micros():
    return _odroid_wiringpi.micros()

def pinModeAlt(pin, mode):
    return _odroid_wiringpi.pinModeAlt(pin, mode)

def analogWrite(pin, value):
    return _odroid_wiringpi.analogWrite(pin, value)

def pwmToneWrite(pin, freq):
    return _odroid_wiringpi.pwmToneWrite(pin, freq)

def gpioClockSet(pin, freq):
    return _odroid_wiringpi.gpioClockSet(pin, freq)

def digitalReadByte2():
    return _odroid_wiringpi.digitalReadByte2()

def digitalWriteByte(*args):
    return _odroid_wiringpi.digitalWriteByte(*args)

def digitalWriteByte2(value):
    return _odroid_wiringpi.digitalWriteByte2(value)

def wiringPiI2CRead(fd):
    return _odroid_wiringpi.wiringPiI2CRead(fd)

def wiringPiI2CReadReg8(fd, reg):
    return _odroid_wiringpi.wiringPiI2CReadReg8(fd, reg)

def wiringPiI2CReadReg16(fd, reg):
    return _odroid_wiringpi.wiringPiI2CReadReg16(fd, reg)

def wiringPiI2CReadBlock(fd, reg, buff, size):
    return _odroid_wiringpi.wiringPiI2CReadBlock(fd, reg, buff, size)

def wiringPiI2CWrite(fd, data):
    return _odroid_wiringpi.wiringPiI2CWrite(fd, data)

def wiringPiI2CWriteReg8(fd, reg, data):
    return _odroid_wiringpi.wiringPiI2CWriteReg8(fd, reg, data)

def wiringPiI2CWriteReg16(fd, reg, data):
    return _odroid_wiringpi.wiringPiI2CWriteReg16(fd, reg, data)

def wiringPiI2CWriteBlock(fd, reg, buff, size):
    return _odroid_wiringpi.wiringPiI2CWriteBlock(fd, reg, buff, size)

def wiringPiI2CSetupInterface(device, devId):
    return _odroid_wiringpi.wiringPiI2CSetupInterface(device, devId)

def wiringPiI2CSetup(devId):
    return _odroid_wiringpi.wiringPiI2CSetup(devId)

def wiringPiSPIGetFd(channel):
    return _odroid_wiringpi.wiringPiSPIGetFd(channel)

def wiringPiSPIDataRW(channel, data):
    return _odroid_wiringpi.wiringPiSPIDataRW(channel, data)

def wiringPiSPISetupInterface(device, channel, speed, mode):
    return _odroid_wiringpi.wiringPiSPISetupInterface(device, channel, speed, mode)

def wiringPiSPISetupMode(channel, speed, mode):
    return _odroid_wiringpi.wiringPiSPISetupMode(channel, speed, mode)

def wiringPiSPISetup(channel, speed):
    return _odroid_wiringpi.wiringPiSPISetup(channel, speed)

def serialOpen(device, baud):
    return _odroid_wiringpi.serialOpen(device, baud)

def serialClose(fd):
    return _odroid_wiringpi.serialClose(fd)

def serialFlush(fd):
    return _odroid_wiringpi.serialFlush(fd)

def serialPutchar(fd, c):
    return _odroid_wiringpi.serialPutchar(fd, c)

def serialPuts(fd, s):
    return _odroid_wiringpi.serialPuts(fd, s)

def serialPrintf(*args):
    return _odroid_wiringpi.serialPrintf(*args)

def serialDataAvail(fd):
    return _odroid_wiringpi.serialDataAvail(fd)

def serialGetchar(fd):
    return _odroid_wiringpi.serialGetchar(fd)

def shiftIn(dPin, cPin, order):
    return _odroid_wiringpi.shiftIn(dPin, cPin, order)

def shiftOut(dPin, cPin, order, val):
    return _odroid_wiringpi.shiftOut(dPin, cPin, order, val)

def softPwmCreate(pin, value, range):
    return _odroid_wiringpi.softPwmCreate(pin, value, range)

def softPwmWrite(pin, value):
    return _odroid_wiringpi.softPwmWrite(pin, value)

def softPwmStop(pin):
    return _odroid_wiringpi.softPwmStop(pin)

def softServoWrite(pin, value):
    return _odroid_wiringpi.softServoWrite(pin, value)

def softServoSetup(p0, p1, p2, p3, p4, p5, p6, p7):
    return _odroid_wiringpi.softServoSetup(p0, p1, p2, p3, p4, p5, p6, p7)

def softToneCreate(pin):
    return _odroid_wiringpi.softToneCreate(pin)

def softToneStop(pin):
    return _odroid_wiringpi.softToneStop(pin)

def softToneWrite(pin, freq):
    return _odroid_wiringpi.softToneWrite(pin, freq)

def drcSetupSerial(pinBase, numPins, device, baud):
    return _odroid_wiringpi.drcSetupSerial(pinBase, numPins, device, baud)

def ads1115Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.ads1115Setup(pinBase, i2cAddress)

def max31855Setup(pinBase, spiChannel):
    return _odroid_wiringpi.max31855Setup(pinBase, spiChannel)

def max5322Setup(pinBase, spiChannel):
    return _odroid_wiringpi.max5322Setup(pinBase, spiChannel)

def mcp23008Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.mcp23008Setup(pinBase, i2cAddress)

def mcp23016Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.mcp23016Setup(pinBase, i2cAddress)

def mcp23017Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.mcp23017Setup(pinBase, i2cAddress)

def mcp23s08Setup(pinBase, spiPort, devId):
    return _odroid_wiringpi.mcp23s08Setup(pinBase, spiPort, devId)

def mcp23s17Setup(pinBase, spiPort, devId):
    return _odroid_wiringpi.mcp23s17Setup(pinBase, spiPort, devId)

def mcp3002Setup(pinBase, spiChannel):
    return _odroid_wiringpi.mcp3002Setup(pinBase, spiChannel)

def mcp3004Setup(pinBase, spiChannel):
    return _odroid_wiringpi.mcp3004Setup(pinBase, spiChannel)

def mcp3422Setup(pinBase, i2cAddress, sampleRate, gain):
    return _odroid_wiringpi.mcp3422Setup(pinBase, i2cAddress, sampleRate, gain)

def mcp4802Setup(pinBase, spiChannel):
    return _odroid_wiringpi.mcp4802Setup(pinBase, spiChannel)

def pcf8574Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.pcf8574Setup(pinBase, i2cAddress)

def pcf8591Setup(pinBase, i2cAddress):
    return _odroid_wiringpi.pcf8591Setup(pinBase, i2cAddress)

def sn3218Setup(pinBase):
    return _odroid_wiringpi.sn3218Setup(pinBase)

def sr595Setup(pinBase, numPins, dataPin, clockPin, latchPin):
    return _odroid_wiringpi.sr595Setup(pinBase, numPins, dataPin, clockPin, latchPin)

def bmp180Setup(pinBase):
    return _odroid_wiringpi.bmp180Setup(pinBase)

def drcSetupNet(pinBase, numPins, ipAddress, port, password):
    return _odroid_wiringpi.drcSetupNet(pinBase, numPins, ipAddress, port, password)

def ds18b20Setup(pinBase, serialNum):
    return _odroid_wiringpi.ds18b20Setup(pinBase, serialNum)

def htu21dSetup(pinBase):
    return _odroid_wiringpi.htu21dSetup(pinBase)

def pseudoPinsSetup(pinBase):
    return _odroid_wiringpi.pseudoPinsSetup(pinBase)

def rht03Setup(pinBase, devicePin):
    return _odroid_wiringpi.rht03Setup(pinBase, devicePin)

def loadWPiExtension(progName, extensionData, verbose):
    return _odroid_wiringpi.loadWPiExtension(progName, extensionData, verbose)

def ds1302rtcRead(reg):
    return _odroid_wiringpi.ds1302rtcRead(reg)

def ds1302rtcWrite(reg, data):
    return _odroid_wiringpi.ds1302rtcWrite(reg, data)

def ds1302ramRead(addr):
    return _odroid_wiringpi.ds1302ramRead(addr)

def ds1302ramWrite(addr, data):
    return _odroid_wiringpi.ds1302ramWrite(addr, data)

def ds1302clockRead(clockData):
    return _odroid_wiringpi.ds1302clockRead(clockData)

def ds1302clockWrite(clockData):
    return _odroid_wiringpi.ds1302clockWrite(clockData)

def ds1302trickleCharge(diodes, resistors):
    return _odroid_wiringpi.ds1302trickleCharge(diodes, resistors)

def ds1302setup(clockPin, dataPin, csPin):
    return _odroid_wiringpi.ds1302setup(clockPin, dataPin, csPin)

def gertboardAnalogWrite(chan, value):
    return _odroid_wiringpi.gertboardAnalogWrite(chan, value)

def gertboardAnalogRead(chan):
    return _odroid_wiringpi.gertboardAnalogRead(chan)

def gertboardSPISetup():
    return _odroid_wiringpi.gertboardSPISetup()

def gertboardAnalogSetup(pinBase):
    return _odroid_wiringpi.gertboardAnalogSetup(pinBase)

def lcd128x64setOrigin(x, y):
    return _odroid_wiringpi.lcd128x64setOrigin(x, y)

def lcd128x64setOrientation(orientation):
    return _odroid_wiringpi.lcd128x64setOrientation(orientation)

def lcd128x64orientCoordinates(x, y):
    return _odroid_wiringpi.lcd128x64orientCoordinates(x, y)

def lcd128x64getScreenSize(x, y):
    return _odroid_wiringpi.lcd128x64getScreenSize(x, y)

def lcd128x64point(x, y, colour):
    return _odroid_wiringpi.lcd128x64point(x, y, colour)

def lcd128x64line(x0, y0, x1, y1, colour):
    return _odroid_wiringpi.lcd128x64line(x0, y0, x1, y1, colour)

def lcd128x64lineTo(x, y, colour):
    return _odroid_wiringpi.lcd128x64lineTo(x, y, colour)

def lcd128x64rectangle(x1, y1, x2, y2, colour, filled):
    return _odroid_wiringpi.lcd128x64rectangle(x1, y1, x2, y2, colour, filled)

def lcd128x64circle(x, y, r, colour, filled):
    return _odroid_wiringpi.lcd128x64circle(x, y, r, colour, filled)

def lcd128x64ellipse(cx, cy, xRadius, yRadius, colour, filled):
    return _odroid_wiringpi.lcd128x64ellipse(cx, cy, xRadius, yRadius, colour, filled)

def lcd128x64putchar(x, y, c, bgCol, fgCol):
    return _odroid_wiringpi.lcd128x64putchar(x, y, c, bgCol, fgCol)

def lcd128x64puts(x, y, str, bgCol, fgCol):
    return _odroid_wiringpi.lcd128x64puts(x, y, str, bgCol, fgCol)

def lcd128x64update():
    return _odroid_wiringpi.lcd128x64update()

def lcd128x64clear(colour):
    return _odroid_wiringpi.lcd128x64clear(colour)

def lcd128x64setup():
    return _odroid_wiringpi.lcd128x64setup()

def lcdHome(fd):
    return _odroid_wiringpi.lcdHome(fd)

def lcdClear(fd):
    return _odroid_wiringpi.lcdClear(fd)

def lcdDisplay(fd, state):
    return _odroid_wiringpi.lcdDisplay(fd, state)

def lcdCursor(fd, state):
    return _odroid_wiringpi.lcdCursor(fd, state)

def lcdCursorBlink(fd, state):
    return _odroid_wiringpi.lcdCursorBlink(fd, state)

def lcdSendCommand(fd, command):
    return _odroid_wiringpi.lcdSendCommand(fd, command)

def lcdPosition(fd, x, y):
    return _odroid_wiringpi.lcdPosition(fd, x, y)

def lcdCharDef(fd, index, data):
    return _odroid_wiringpi.lcdCharDef(fd, index, data)

def lcdPutchar(fd, data):
    return _odroid_wiringpi.lcdPutchar(fd, data)

def lcdPuts(fd, string):
    return _odroid_wiringpi.lcdPuts(fd, string)

def lcdPrintf(*args):
    return _odroid_wiringpi.lcdPrintf(*args)

def lcdInit(rows, cols, bits, rs, strb, d0, d1, d2, d3, d4, d5, d6, d7):
    return _odroid_wiringpi.lcdInit(rows, cols, bits, rs, strb, d0, d1, d2, d3, d4, d5, d6, d7)

def maxDetectRead(pin, buffer):
    return _odroid_wiringpi.maxDetectRead(pin, buffer)

def readRHT03(pin, temp, rh):
    return _odroid_wiringpi.readRHT03(pin, temp, rh)

def piGlow1(leg, ring, intensity):
    return _odroid_wiringpi.piGlow1(leg, ring, intensity)

def piGlowLeg(leg, intensity):
    return _odroid_wiringpi.piGlowLeg(leg, intensity)

def piGlowRing(ring, intensity):
    return _odroid_wiringpi.piGlowRing(ring, intensity)

def piGlowSetup(clear):
    return _odroid_wiringpi.piGlowSetup(clear)

def setupNesJoystick(dPin, cPin, lPin):
    return _odroid_wiringpi.setupNesJoystick(dPin, cPin, lPin)

def readNesJoystick(joystick):
    return _odroid_wiringpi.readNesJoystick(joystick)

def scrollPhatPoint(x, y, colour):
    return _odroid_wiringpi.scrollPhatPoint(x, y, colour)

def scrollPhatLine(x0, y0, x1, y1, colour):
    return _odroid_wiringpi.scrollPhatLine(x0, y0, x1, y1, colour)

def scrollPhatLineTo(x, y, colour):
    return _odroid_wiringpi.scrollPhatLineTo(x, y, colour)

def scrollPhatRectangle(x1, y1, x2, y2, colour, filled):
    return _odroid_wiringpi.scrollPhatRectangle(x1, y1, x2, y2, colour, filled)

def scrollPhatUpdate():
    return _odroid_wiringpi.scrollPhatUpdate()

def scrollPhatClear():
    return _odroid_wiringpi.scrollPhatClear()

def scrollPhatPutchar(c):
    return _odroid_wiringpi.scrollPhatPutchar(c)

def scrollPhatPuts(str):
    return _odroid_wiringpi.scrollPhatPuts(str)

def scrollPhatPrintf(*args):
    return _odroid_wiringpi.scrollPhatPrintf(*args)

def scrollPhatPrintSpeed(cps10):
    return _odroid_wiringpi.scrollPhatPrintSpeed(cps10)

def scrollPhatIntensity(percent):
    return _odroid_wiringpi.scrollPhatIntensity(percent)

def scrollPhatSetup():
    return _odroid_wiringpi.scrollPhatSetup()

def piFaceSetup(pinBase):
    return _odroid_wiringpi.piFaceSetup(pinBase)

# wiringPi modes

WPI_MODE_PINS = 0;
WPI_MODE_GPIO = 1;
WPI_MODE_GPIO_SYS = 2;
WPI_MODE_PHYS = 3;
WPI_MODE_PIFACE = 4;
WPI_MODE_UNINITIALISED = -1;

# Pin modes

INPUT = 0;
OUTPUT = 1;
INPUT_PULLUP = 2;
INPUT_PULLDOWN = 3;
PWM_OUTPUT = 4;
GPIO_CLOCK = 5;
SOFT_PWM_OUTPUT = 6;
SOFT_TONE_OUTPUT = 7;
PWM_TONE_OUTPUT = 8;

LOW = 0;
HIGH = 1;

# Pull up/down/none

PUD_OFF = 0;
PUD_DOWN = 1;
PUD_UP = 2;

# Interrupt levels

INT_EDGE_SETUP = 0;
INT_EDGE_FALLING = 1;
INT_EDGE_RISING = 2;
INT_EDGE_BOTH = 3;

# Shifting (from wiringShift.h)

LSBFIRST = 0;
MSBFIRST = 1;



class nes(object):
  def setupNesJoystick(self,*args):
    return setupNesJoystick(*args)
  def readNesJoystick(self,*args):
    return readNesJoystick(*args)

class Serial(object):
  device = '/dev/ttyAMA0'
  baud = 9600
  serial_id = 0
  def printf(self,*args):
    return serialPrintf(self.serial_id,*args)
  def dataAvail(self,*args):
    return serialDataAvail(self.serial_id,*args)
  def getchar(self,*args):
    return serialGetchar(self.serial_id,*args)
  def putchar(self,*args):
    return serialPutchar(self.serial_id,*args)
  def puts(self,*args):
    return serialPuts(self.serial_id,*args)
  def __init__(self,device,baud):
    self.device = device
    self.baud = baud
    self.serial_id = serialOpen(self.device,self.baud)
  def __del__(self):
    serialClose(self.serial_id)

class I2C(object):
  def setupInterface(self,*args):
  	return wiringPiI2CSetupInterface(*args)
  def setup(self,*args):
    return wiringPiI2CSetup(*args)
  def read(self,*args):
    return wiringPiI2CRead(*args)
  def readReg8(self,*args):
    return wiringPiI2CReadReg8(*args)
  def readReg16(self,*args):
    return wiringPiI2CReadReg16(*args)
  def readBlock(self,*args):
    return wiringPiI2CReadBlock(*args)
  def write(self,*args):
    return wiringPiI2CWrite(*args)
  def writeReg8(self,*args):
    return wiringPiI2CWriteReg8(*args)
  def writeReg16(self,*args):
    return wiringPiI2CWriteReg16(*args)
  def writeBlock(self,*args):
    return wiringPiI2CWriteBlock(*args)

class GPIO(object):
  WPI_MODE_PINS = 0
  WPI_MODE_GPIO = 1
  WPI_MODE_GPIO_SYS = 2
  WPI_MODE_PHYS = 3
  WPI_MODE_PIFACE = 4
  WPI_MODE_UNINITIALISED = -1

  INPUT = 0
  OUTPUT = 1
  PWM_OUTPUT = 2
  GPIO_CLOCK = 3

  LOW = 0
  HIGH = 1

  PUD_OFF = 0
  PUD_DOWN = 1
  PUD_UP = 2

  INT_EDGE_SETUP = 0
  INT_EDGE_FALLING = 1
  INT_EDGE_RISING = 2
  INT_EDGE_BOTH = 3

  LSBFIRST = 0
  MSBFIRST = 1

  MODE = 0
  def __init__(self,pinmode=0):
    self.MODE=pinmode
    if pinmode==self.WPI_MODE_PINS:
      wiringPiSetup()
    if pinmode==self.WPI_MODE_GPIO:
      wiringPiSetupGpio()
    if pinmode==self.WPI_MODE_GPIO_SYS:
      wiringPiSetupSys()
    if pinmode==self.WPI_MODE_PHYS:
      wiringPiSetupPhys()

  def delay(self,*args):
    delay(*args)
  def delayMicroseconds(self,*args):
    delayMicroseconds(*args)
  def millis(self):
    return millis()
  def micros(self):
    return micros()

  def piHiPri(self,*args):
    return piHiPri(*args)

  def wpiPinToGpio(self,*args):
    return wpiPinToGpio(*args)
  def getAlt(self,*args):
    return getAlt(*args)
  def digitalWriteByte(self,*args):
    return digitalWriteByte(*args)

  def setDrive(self,*args):
    setDrive(*args)
  def getDrive(self,*args):
    return getDrive(*args)
  def getPUPD(self,*args):
    return getPUPD(*args)

  def pwmSetRange(self,*args):
    pwmSetRange(*args)
  def pwmSetClock(self,*args):
    pwmSetClock(*args)
  def gpioClockSet(self,*args):
    gpioClockSet(*args)
  def pwmWrite(self,*args):
    pwmWrite(*args)

  def pinMode(self,*args):
    pinMode(*args)

  def digitalWrite(self,*args):
    digitalWrite(*args)
  def digitalRead(self,*args):
    return digitalRead(*args)
  def digitalWriteByte(self,*args):
    digitalWriteByte(*args)

  def analogWrite(self,*args):
    analogWrite(*args)
  def analogRead(self,*args):
    return analogRead(*args)

  def shiftOut(self,*args):
    shiftOut(*args)
  def shiftIn(self,*args):
    return shiftIn(*args)

  def pullUpDnControl(self,*args):
    return pullUpDnControl(*args)

  def waitForInterrupt(self,*args):
    return waitForInterrupt(*args)
  def wiringPiISR(self,*args):
    return wiringPiISR(*args)

  def softPwmCreate(self,*args):
    return softPwmCreate(*args)
  def softPwmWrite(self,*args):
    return softPwmWrite(*args)

  def softToneCreate(self,*args):
    return softToneCreate(*args)
  def softToneWrite(self,*args):
    return softToneWrite(*args)

  def setupCheck(self, *args):
    setupCheck(*args)
  def usingGpiomemCheck(self, *args):
    usingGpiomemCheck(*args)
  def setUsingGpiomem(self, *args):
    setUsingGpiomem(*args)

  def lcdHome(self,*args):
    return lcdHome(self,*args)
  def lcdCLear(self,*args):
    return lcdClear(self,*args)
  def lcdSendCommand(self,*args):
    return lcdSendCommand(self,*args)
  def lcdPosition(self,*args):
    return lcdPosition(self,*args)
  def lcdPutchar(self,*args):
    return lcdPutchar(self,*args)
  def lcdPuts(self,*args):
    return lcdPuts(self,*args)
  def lcdPrintf(self,*args):
    return lcdPrintf(self,*args)
  def lcdInit(self,*args):
    return lcdInit(self,*args)

  def piGlowSetup(self,*args):
    return piGlowSetup(self,*args)
  def piGlow1(self,*args):
    return piGlow1(self,*args)
  def piGlowLeg(self,*args):
    return piGlowLeg(self,*args)
  def piGlowRing(self,*args):
    return piGlowRing(self,*args)



