Enum Provider

  • All Implemented Interfaces:
    GlcdOptionValue<java.lang.String>, java.io.Serializable, java.lang.Comparable<Provider>

    public enum Provider
    extends java.lang.Enum<Provider>
    implements GlcdOptionValue<java.lang.String>
    The enumeration for all available I/O providers supported by the library
    Author:
    Rafael Ibasco
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
      LIBGPIOD
      A GPIO library which makes use of the linux character device (replacement of sysfs).
      PIGPIO_DAEMON
      Uses the third-party pigpiod_if2 library.
      PIGPIO_STANDALONE
      Uses the third-party pigpio library.
      SYSTEM
      Makes use of built-in peripheral I/O interfaces provided by the linux kernel.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Class<java.lang.String> getType()  
      java.lang.String toValue()  
      static Provider valueOf​(java.lang.String name)
      Returns the enum constant of this type with the specified name.
      static Provider[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      • Methods inherited from class java.lang.Enum

        clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Enum Constant Detail

      • LIBGPIOD

        public static final Provider LIBGPIOD
        A GPIO library which makes use of the linux character device (replacement of sysfs). SPI and I2C not supported.
        See Also:
        Libgpiod website
      • PIGPIO_STANDALONE

        public static final Provider PIGPIO_STANDALONE
        Uses the third-party pigpio library. Standalone mode (no daemon needed). The program is linked against the pigpio library, this means that only ONE program can be running at a time when using this mode. Supports I2C/GPIO and SPI interfaces.
        See Also:
        Difference between pigpio and pigpiod_if2, Pigpio Website
      • PIGPIO_DAEMON

        public static final Provider PIGPIO_DAEMON
        Uses the third-party pigpiod_if2 library. Requires the pigpio daemon to be installed and running on the target system. Multiple programs are allowed to run at the same time. Supports I2C/GPIO and SPI interfaces. Communication with the daemon is done via Socket Interface, which is much slower than the PIGPIO_STANDALONE mode.
        See Also:
        Difference between pigpio and pigpiod_if2, Pigpio Website
      • SYSTEM

        public static final Provider SYSTEM

        Makes use of built-in peripheral I/O interfaces provided by the linux kernel. No external dependencies/packages are required to be installed on the SoC. Fully Supports I2C, GPIO (character device and sysfs) and SPI.

        See Also:
        C-periphery website
    • Method Detail

      • values

        public static Provider[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (Provider c : Provider.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static Provider valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • toValue

        public java.lang.String toValue()
        Specified by:
        toValue in interface GlcdOptionValue<java.lang.String>
      • getType

        public java.lang.Class<java.lang.String> getType()
        Specified by:
        getType in interface GlcdOptionValue<java.lang.String>