Skip to content

File types.h#

Go to the source code of this file

  • #include <stdbool.h>
  • #include <stddef.h>
  • #include <stdint.h>
  • #include <stdarg.h>

Classes#

Type Name
struct upisnd_range_t
Number range for input_min, input_max and value_low, value_high.
struct upisnd_encoder_opts_t
Encoder specific options.
struct upisnd_analog_input_opts_t
Analog Input specific options.

Public Types#

Type Name
enum upisnd_element_type_e
enum upisnd_activity_e
Activity type.
enum upisnd_pin_pull_e
GPIO pin pull-up/down configuration.
enum upisnd_pin_direction_e
GPIO pin direction.
enum upisnd_pin_e
The Pisound Micro header pin number constants.
enum upisnd_value_mode_e
Value mode.
typedef struct upisnd_elements_list_node_t * upisnd_element_ref_t
A refcounted handle to a Pisound Micro Element.
typedef uint32_t upisnd_setup_t
A container type for all Pisound Micro Element setup options.
typedef int8_t upisnd_pin_t
The storage type to refer to Pisound Micro's GPIO pins.

upisnd_element_type_e#

enum upisnd_element_type_e {
    UPISND_ELEMENT_TYPE_INVALID = -1,
    UPISND_ELEMENT_TYPE_NONE,
    UPISND_ELEMENT_TYPE_ENCODER,
    UPISND_ELEMENT_TYPE_ANALOG_INPUT,
    UPISND_ELEMENT_TYPE_GPIO,
    UPISND_ELEMENT_TYPE_ACTIVITY,
    UPISND_ELEMENT_TYPE_COUNT
};

upisnd_activity_e#

Activity type.

enum upisnd_activity_e {
    UPISND_ACTIVITY_INVALID = -1,
    UPISND_ACTIVITY_MIDI_INPUT,
    UPISND_ACTIVITY_MIDI_OUTPUT,
    UPISND_ACTIVITY_COUNT
};


upisnd_pin_pull_e#

GPIO pin pull-up/down configuration.

enum upisnd_pin_pull_e {
    UPISND_PIN_PULL_INVALID = -1,
    UPISND_PIN_PULL_NONE,
    UPISND_PIN_PULL_UP,
    UPISND_PIN_PULL_DOWN,
    UPISND_PIN_PULL_COUNT
};


upisnd_pin_direction_e#

GPIO pin direction.

enum upisnd_pin_direction_e {
    UPISND_PIN_DIR_INVALID = -1,
    UPISND_PIN_DIR_INPUT,
    UPISND_PIN_DIR_OUTPUT,
    UPISND_PIN_DIR_COUNT
};


upisnd_pin_e#

The Pisound Micro header pin number constants.

enum upisnd_pin_e {
    UPISND_PIN_A27,
    UPISND_PIN_A28,
    UPISND_PIN_A29,
    UPISND_PIN_A30,
    UPISND_PIN_A31,
    UPISND_PIN_A32,
    UPISND_PIN_B03,
    UPISND_PIN_B04,
    UPISND_PIN_B05,
    UPISND_PIN_B06,
    UPISND_PIN_B07,
    UPISND_PIN_B08,
    UPISND_PIN_B09,
    UPISND_PIN_B10,
    UPISND_PIN_B11,
    UPISND_PIN_B12,
    UPISND_PIN_B13,
    UPISND_PIN_B14,
    UPISND_PIN_B15,
    UPISND_PIN_B16,
    UPISND_PIN_B17,
    UPISND_PIN_B18,
    UPISND_PIN_B23,
    UPISND_PIN_B24,
    UPISND_PIN_B25,
    UPISND_PIN_B26,
    UPISND_PIN_B27,
    UPISND_PIN_B28,
    UPISND_PIN_B29,
    UPISND_PIN_B30,
    UPISND_PIN_B31,
    UPISND_PIN_B32,
    UPISND_PIN_B33,
    UPISND_PIN_B34,
    UPISND_PIN_B37,
    UPISND_PIN_B38,
    UPISND_PIN_B39,
    UPISND_PIN_COUNT,
    UPISND_PIN_INVALID = UPISND_PIN_COUNT
};

There's 4 sequential enum value ranges:

UPISND_PIN_A27 - UPISND_PIN_A32 UPISND_PIN_B03 - UPISND_PIN_B18 UPISND_PIN_B23 - UPISND_PIN_B34 UPISND_PIN_B37 - UPISND_PIN_B39

For a total of 37 pins. (UPISND_PIN_COUNT)

See also: upisnd_pin_t


upisnd_value_mode_e#

Value mode.

enum upisnd_value_mode_e {
    UPISND_VALUE_MODE_INVALID = -1,
    UPISND_VALUE_MODE_CLAMP,
    UPISND_VALUE_MODE_WRAP,
    UPISND_VALUE_MODE_COUNT
};


upisnd_element_ref_t#

A refcounted handle to a Pisound Micro Element.

typedef struct upisnd_elements_list_node_t* upisnd_element_ref_t;

Every upisnd_element_ref_t that gets returned by the APIs, must be unrefed using upisnd_element_unref, once you are done with it.


upisnd_setup_t#

A container type for all Pisound Micro Element setup options.

typedef uint32_t upisnd_setup_t;

Does not include extended Analog Input and Encoder options, which can be accessed via upisnd_encoder_opts_t and upisnd_analog_input_opts_t.


upisnd_pin_t#

The storage type to refer to Pisound Micro's GPIO pins.

typedef int8_t upisnd_pin_t;

See also: upisnd_pin_e.