LMMS
Loading...
Searching...
No Matches
lv2_options.h File Reference
#include <stdint.h>
#include "lv2_urid.h"
#include "lv2/lv2plug.in/ns/lv2core/lv2.h"

Go to the source code of this file.

Classes

struct  _LV2_Options_Option
struct  _LV2_Options_Interface

Macros

#define LV2_OPTIONS_URI   "http://lv2plug.in/ns/ext/options"
#define LV2_OPTIONS_PREFIX   LV2_OPTIONS_URI "#"
#define LV2_OPTIONS__Option   LV2_OPTIONS_PREFIX "Option"
#define LV2_OPTIONS__interface   LV2_OPTIONS_PREFIX "interface"
#define LV2_OPTIONS__options   LV2_OPTIONS_PREFIX "options"
#define LV2_OPTIONS__requiredOption   LV2_OPTIONS_PREFIX "requiredOption"
#define LV2_OPTIONS__supportedOption   LV2_OPTIONS_PREFIX "supportedOption"

Typedefs

typedef struct _LV2_Options_Option LV2_Options_Option
typedef struct _LV2_Options_Interface LV2_Options_Interface

Enumerations

enum  LV2_Options_Context { LV2_OPTIONS_INSTANCE , LV2_OPTIONS_RESOURCE , LV2_OPTIONS_BLANK , LV2_OPTIONS_PORT }
enum  LV2_Options_Status {
  LV2_OPTIONS_SUCCESS = 0 , LV2_OPTIONS_ERR_UNKNOWN = 1 , LV2_OPTIONS_ERR_BAD_SUBJECT = 1 << 1 , LV2_OPTIONS_ERR_BAD_KEY = 1 << 2 ,
  LV2_OPTIONS_ERR_BAD_VALUE = 1 << 3
}

Macro Definition Documentation

◆ LV2_OPTIONS__interface

#define LV2_OPTIONS__interface   LV2_OPTIONS_PREFIX "interface"

◆ LV2_OPTIONS__Option

#define LV2_OPTIONS__Option   LV2_OPTIONS_PREFIX "Option"

◆ LV2_OPTIONS__options

#define LV2_OPTIONS__options   LV2_OPTIONS_PREFIX "options"

◆ LV2_OPTIONS__requiredOption

#define LV2_OPTIONS__requiredOption   LV2_OPTIONS_PREFIX "requiredOption"

◆ LV2_OPTIONS__supportedOption

#define LV2_OPTIONS__supportedOption   LV2_OPTIONS_PREFIX "supportedOption"

◆ LV2_OPTIONS_PREFIX

#define LV2_OPTIONS_PREFIX   LV2_OPTIONS_URI "#"

◆ LV2_OPTIONS_URI

#define LV2_OPTIONS_URI   "http://lv2plug.in/ns/ext/options"

Typedef Documentation

◆ LV2_Options_Interface

typedef struct _LV2_Options_Interface LV2_Options_Interface

Interface for dynamically setting options (LV2_OPTIONS__interface).

◆ LV2_Options_Option

typedef struct _LV2_Options_Option LV2_Options_Option

An option.

This is a property with a subject, also known as a triple or statement.

This struct is useful anywhere a statement needs to be passed where no memory ownership issues are present (since the value is a const pointer).

Options can be passed to an instance via the feature LV2_OPTIONS__options with data pointed to an array of options terminated by a zeroed option, or accessed/manipulated using LV2_Options_Interface.

Enumeration Type Documentation

◆ LV2_Options_Context

The context of an Option, which defines the subject it applies to.

Enumerator
LV2_OPTIONS_INSTANCE 

This option applies to the instance itself. The subject must be ignored.

LV2_OPTIONS_RESOURCE 

This option applies to some named resource. The subject is a URI mapped to an integer (a LV2_URID, like the key)

LV2_OPTIONS_BLANK 

This option applies to some blank node. The subject is a blank node identifier, which is valid only within the current local scope.

LV2_OPTIONS_PORT 

This option applies to a port on the instance. The subject is the port's index.

◆ LV2_Options_Status

A status code for option functions.

Enumerator
LV2_OPTIONS_SUCCESS 

Completed successfully.

LV2_OPTIONS_ERR_UNKNOWN 

Unknown error.

LV2_OPTIONS_ERR_BAD_SUBJECT 

Invalid/unsupported subject.

LV2_OPTIONS_ERR_BAD_KEY 

Invalid/unsupported key.

LV2_OPTIONS_ERR_BAD_VALUE 

Invalid/unsupported value.