Skip to content

Latest commit

 

History

History
87 lines (57 loc) · 1.99 KB

File metadata and controls

87 lines (57 loc) · 1.99 KB

Generic Devices

.. currentmodule:: gpiozero

The GPIO Zero class hierarchy is quite extensive. It contains a couple of base classes:

There are also a couple of mixin classes:

  • :class:`ValuesMixin` which defines the values properties; there is rarely a need to use this as the base classes mentioned above both include it (so all classes in GPIO Zero include the values property)
  • :class:`SourceMixin` which defines the source property; this is generally included in novel output device classes

The current class hierarchies are displayed below. For brevity, the mixin classes are omitted:

images/gpio_device_hierarchy.*

images/composite_device_hierarchy.*

Finally, for composite devices, the following chart shows which devices are composed of which other devices:

images/composed_devices.*

Base Classes

.. autoclass:: GPIODevice(pin)
    :inherited-members:
    :members:

.. autoclass:: CompositeDevice
    :inherited-members:
    :members:

Input Devices

.. autoclass:: InputDevice(pin, pull_up=False)
    :members:

.. autoclass:: WaitableInputDevice
    :members:

.. autoclass:: DigitalInputDevice(pin, pull_up=False, bounce_time=None)
    :members:

.. autoclass:: SmoothedInputDevice
    :members:

.. autoclass:: AnalogInputDevice
    :members:

Output Devices

.. autoclass:: OutputDevice(pin, active_high=True, initial_value=False)
    :members:

.. autoclass:: PWMOutputDevice(pin, active_high=True, initial_value=0, frequency=100)
    :members:

.. autoclass:: DigitalOutputDevice(pin, active_high=True, initial_value=False)
    :members:

Mixin Classes

.. autoclass:: ValuesMixin(...)
    :members:

.. autoclass:: SourceMixin(...)
    :members: