Description

This extension defines a simple mechanism for plugins to map URIs to and from integers, usually for performance reasons (e.g. processing events typed by URIs in real time). Typically, plugins map URIs to integers for things they "understand" at instantiation time, and store those values for use in the audio thread without doing any string comparison. This allows for the extensibility of RDF but with the performance of integers.

This extension is intended as an improved and simplified replacement for the uri-map extension, since the map context parameter has been found problematic. This extension is functionally equivalent to the uri-map extension with a NULL context. New implementations are encouraged to use this extension for URI mapping.

Index

Instances
map, unmap

Reference

Instance urid:map

A feature which is used to map URIs to integers. To support this feature, the host must pass an LV2_Feature to LV2_Descriptor::instantiate() with URI LV2_URID__map and data pointed to an instance of LV2_URID_Map.

Typelv2:Feature

Instance urid:unmap

A feature which is used to unmap URIs previously mapped to integers by urid:map. To support this feature, the host must pass an LV2_Feature to LV2_Descriptor::instantiate() with URI LV2_URID__unmap and data pointed to an instance of LV2_URID_Unmap.

Typelv2:Feature

History

Version 2.2 (2014-08-08)
  • Add patch:sequenceNumber for associating replies with requests.
Version 2.2 (2014-01-04)
  • Add missing include string.h to logger.h for memset.
Version 1.6 (2013-05-26)
  • Fix crash in forge.h when pushing atoms to a full buffer.
Version 1.4 (2013-01-27)
  • Improve atom documentation.
  • Fix lv2_atom_sequence_end().
  • Remove atom:stringType in favour of owl:onDatatype so generic tools can understand and validate atom literals.
Version 2.0 (2013-01-16)
  • Add state:loadDefaultState feature so plugins can have their default state loaded without hard-coding default state as a special case.
Version 1.10 (2013-01-13)
  • Fix incorrect return type in lv2_event_get().
Version 2.0 (2013-01-10)
  • Add patch:readable and patch:writable for describing available properties.
  • Make patch:Set a compact message for setting one property.
Version 2.0 (2013-01-08)
  • Add logger convenience API.
Version 1.2 (2012-12-21)
  • Fix typo in bufsz:sequenceSize label.
Version 1.4 (2012-10-14)
  • Fix typo in urid:unmap documentation.
Version 1.2 (2012-04-17)
  • Merge with unified LV2 package.
  • Add feature struct names.
Version 1.0 (2011-11-21)
  • Initial release.
Version 1.4 (2011-11-21)
  • Update packaging.
  • Deprecate uri-map in favour of urid.
Version 2.2 (2011-11-21)
  • Update packaging.
  • Improve documentation.
Version 1.4 (2011-11-21)
  • Improve documentation.
  • Update packaging.
Version 1.4 (2011-11-21)
  • Update packaging.
  • Improve documentation.
Version 1.4 (2011-11-21)
  • Update packaging.
Version 1.4 (2011-11-21)
  • Update packaging.
  • Improve documentation.
Version 1.2 (2011-05-26)
  • Mark up documentation in HTML using lv2:documentation.
  • Add build system (for installation).
Version 1.2 (2011-05-26)
  • Switch to ISC license.
  • Add build system for installation.
Version 1.2 (2011-05-26)
  • Switch to ISC license.
  • Add build system for installation.
Version 1.2 (2011-05-26)
  • Convert documentation to HTML and use lv2:documentation.
  • Use lv2:Specification to be discovered as an extension.
  • Add build system (for installation).
Version 1.2 (2011-05-26)
  • Switch to ISC license.
  • Add build system for installation.
Version 1.0 (2010-11-24)
  • Initial release.
Version 1.0 (2010-10-18)
  • Initial release.
Version 2.0 (2010-10-04)
  • Initial release.
Version 1.0 (2010-10-04)
  • Initial release.
Version 1.0 (2010-10-04)
  • Initial release.
Version 1.0 (2010-10-04)
  • Initial release.