LV2 Toolkit  1.2.0
Classes | Typedefs | Enumerations | Functions
lvtk Namespace Reference

Classes

struct  Atom
 
class  AtomForge
 
struct  AtomObject
 
struct  AtomSequence
 
class  AtomVector
 
struct  BufferInfo
 
struct  BufSize
 
struct  DataAccess
 
class  DescList
 
struct  EventRef
 
class  FeatureIter
 
struct  GtkUI
 
struct  InstanceAccess
 
struct  Log
 
struct  Options
 
class  OptionsIter
 
class  Plugin
 
struct  Qt4UI
 
struct  ResizePort
 
struct  State
 
struct  StateRetrieve
 
struct  StateStore
 
class  Synth
 
class  UI
 
class  UIDescList
 
struct  URID
 
struct  URIMap
 
class  Voice
 
struct  Worker
 
struct  WorkerRespond
 
struct  WriteMIDI
 

Typedefs

typedef LV2_Feature Feature
 
typedef vector< const Feature * > FeatureVec
 
typedef void * FeatureData
 
typedef void(* FeatureHandler) (void *instance, void *data)
 
typedef map< string, FeatureHandlerFeatureHandlerMap
 
typedef LV2_Atom_Event AtomEvent
 
typedef LV2_Atom_Property_Body PropertyBody
 
typedef LV2_Atom_Forge_Frame ForgeFrame
 
typedef LV2_Atom_Forge_Ref ForgeRef
 
typedef LV2_Atom_Object_Query ObjectQuery
 
typedef LV2_Options_Option Option
 
typedef uint32_t(* MapFunc) (const char *symbol)
 
typedef const char *(* UnmapFunc) (uint32_t id)
 

Enumerations

enum  OptionsContext { OPTIONS_INSTANCE = LV2_OPTIONS_INSTANCE, OPTIONS_RESOURCE = LV2_OPTIONS_RESOURCE, OPTIONS_BLANK = LV2_OPTIONS_BLANK, OPTIONS_PORT = LV2_OPTIONS_PORT }
 
enum  OptionsStatus {
  OPTIONS_SUCCESS = LV2_OPTIONS_SUCCESS, OPTIONS_ERR_UNKNOWN = LV2_OPTIONS_ERR_UNKNOWN, OPTIONS_ERR_BAD_SUBJECT = LV2_OPTIONS_ERR_BAD_SUBJECT, OPTIONS_ERR_BAD_KEY = LV2_OPTIONS_ERR_BAD_KEY,
  OPTIONS_ERR_BAD_VALUE = LV2_OPTIONS_ERR_BAD_VALUE
}
 
enum  ResizePortStatus { RESIZE_PORT_SUCCESS = LV2_RESIZE_PORT_SUCCESS, RESIZE_PORT_ERR_UNKNOWN = LV2_RESIZE_PORT_ERR_UNKNOWN, RESIZE_PORT_ERR_NO_SPACE = LV2_RESIZE_PORT_ERR_NO_SPACE }
 
enum  StateFlags { STATE_IS_POD = LV2_STATE_IS_POD, STATE_IS_PORTABLE = LV2_STATE_IS_PORTABLE, STATE_IS_NATIVE = LV2_STATE_IS_NATIVE }
 
enum  StateStatus {
  STATE_SUCCESS = LV2_STATE_SUCCESS, STATE_ERR_UNKNOWN = LV2_STATE_ERR_UNKNOWN, STATE_ERR_BAD_TYPE = LV2_STATE_ERR_BAD_TYPE, STATE_ERR_BAD_FLAGS = LV2_STATE_ERR_BAD_FLAGS,
  STATE_ERR_NO_FEATURE = LV2_STATE_ERR_NO_FEATURE, STATE_ERR_NO_PROPERTY = LV2_STATE_ERR_NO_PROPERTY
}
 
enum  WorkerStatus { WORKER_SUCCESS = LV2_WORKER_SUCCESS, WORKER_ERR_UNKNOWN = LV2_WORKER_ERR_UNKNOWN, WORKER_ERR_NO_SPACE = LV2_WORKER_ERR_NO_SPACE }
 

Functions

DescListget_lv2_descriptors ()
 
UIDescListget_lv2g2g_descriptors ()
 

Detailed Description

C++ convenience header for LV2 Feature handling. LV2 Version Support: lv2core 8.0 (2012-04-17) STABLE

write_midi.hpp - Write MIDI data from UI to Plugin

Copyright (C) 2012 Michael Fisher mfish.nosp@m.er31.nosp@m.@gmai.nosp@m.l.co.nosp@m.m

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 01222-1307 USA

midi.hpp - support file for writing LV2 plugins in C++

Copyright (C) 2012 Michael Fisher mfish.nosp@m.er31.nosp@m.@gmai.nosp@m.l.co.nosp@m.m

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 01222-1307 USA C++ convenience header for the LV2 midi extension.

patch.hpp - Support file for writing LV2 plugins in C++

Copyright (C) 2012 Michael Fisher mfish.nosp@m.er31.nosp@m.@gmai.nosp@m.l.co.nosp@m.m

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 01222-1307 USA C++ convenience header for the LV2 patch extension. LV2 Version: 1.0 (2012-04-17)

This mixin implements the resize port extension.

Typedef Documentation

typedef LV2_Atom_Event AtomEvent

Typedefs for an Atom data types

typedef LV2_Feature Feature

Typedef for the LV2_Feature type so we get it into the LV2 namespace.

typedef void* FeatureData

Convenient typdef for Feature data

typedef void(* FeatureHandler) (void *instance, void *data)

Convenient typedef for the feature handler function type.

Parameters
instanceThe plugin instance
dataFeature Data passed from host
typedef map<string, FeatureHandler> FeatureHandlerMap

Convenient typedef for the feature handler map type.

typedef vector<const Feature*> FeatureVec

Convenient typedef for a vector of Features.

typedef uint32_t(* MapFunc) (const char *symbol)

Function type for mapping symbols

typedef LV2_Options_Option Option

Convenience enum to get LV2_Options_Option into a C++ namespace

typedef const char*(* UnmapFunc) (uint32_t id)

Function type for unmaping URIDs

Enumeration Type Documentation

Convenience enum to get LV2_Options_Context into a C++ namespace

Enumerator
OPTIONS_INSTANCE 

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

OPTIONS_RESOURCE 

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

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.

OPTIONS_PORT 

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

Convenience enum to get LV2_Options_Status into a C++ namespace

Enumerator
OPTIONS_SUCCESS 

Completed successfully.

OPTIONS_ERR_UNKNOWN 

Unknown error.

OPTIONS_ERR_BAD_SUBJECT 

Invalid/unsupported subject.

OPTIONS_ERR_BAD_KEY 

Invalid/unsupported key.

OPTIONS_ERR_BAD_VALUE 

Invalid/unsupported value.

Resize port status codes

Enumerator
RESIZE_PORT_SUCCESS 

Completed successfully.

RESIZE_PORT_ERR_UNKNOWN 

Unknown Error

RESIZE_PORT_ERR_NO_SPACE 

Insufficient space

enum StateFlags
Enumerator
STATE_IS_POD 

Plain Old Data.

    Values with this flag contain no pointers or references to other areas
    of memory.  It is safe to copy POD values with a simple memcpy and store
    them for the duration of the process.  A POD value is not necessarily
    safe to trasmit between processes or machines (e.g. filenames are POD),
    see STATE_IS_PORTABLE for details.

    Implementations MUST NOT attempt to copy or serialise a non-POD value if
    they do not understand its type (and thus know how to correctly do so).
STATE_IS_PORTABLE 

Portable (architecture independent) data.

    Values with this flag are in a format that is usable on any
    architecture.  A portable value saved on one machine can be restored on
    another machine regardless of architecture.  The format of portable
    values MUST NOT depend on architecture-specific properties like
    endianness or alignment.  Portable values MUST NOT contain filenames.
STATE_IS_NATIVE 

Native data.

    This flag is used by the host to indicate that the saved data is only
    going to be used locally in the currently running process (e.g. for
    instance duplication or snapshots), so the plugin should use the most
    efficient representation possible and not worry about serialisation
    and portability.
Enumerator
STATE_SUCCESS 

Completed successfully.

STATE_ERR_UNKNOWN 

Unknown error.

STATE_ERR_BAD_TYPE 

Failed due to unsupported type.

STATE_ERR_BAD_FLAGS 

Failed due to unsupported flags.

STATE_ERR_NO_FEATURE 

Failed due to missing features.

STATE_ERR_NO_PROPERTY 

Failed due to missing property.

Convenience enum to get LV2_Worker_Status into a C++ namespace

Enumerator
WORKER_SUCCESS 

Work Completed.

WORKER_ERR_UNKNOWN 

Unknown error.

WORKER_ERR_NO_SPACE 

Fail due to Lack of Space.