ardour
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Private Types | Private Attributes | Static Private Attributes | List of all members
ARDOUR::URIMap Class Reference

#include <uri_map.h>

Inheritance diagram for ARDOUR::URIMap:

Classes

struct  URIDs
 

Public Member Functions

 URIMap ()
 
LV2_Feature * uri_map_feature ()
 
LV2_Feature * urid_map_feature ()
 
LV2_Feature * urid_unmap_feature ()
 
LV2_URID_Map * urid_map ()
 
LV2_URID_Unmap * urid_unmap ()
 
uint32_t uri_to_id (const char *uri)
 
const char * id_to_uri (uint32_t id) const
 

Static Public Member Functions

static URIMapinstance ()
 

Public Attributes

URIDs urids
 

Private Types

typedef std::map< const
std::string, uint32_t > 
Map
 
typedef std::map< uint32_t,
const std::string > 
Unmap
 

Private Attributes

Map _map
 
Unmap _unmap
 
LV2_Feature _uri_map_feature
 
LV2_URI_Map_Feature _uri_map_feature_data
 
LV2_Feature _urid_map_feature
 
LV2_URID_Map _urid_map_feature_data
 
LV2_Feature _urid_unmap_feature
 
LV2_URID_Unmap _urid_unmap_feature_data
 
Glib::Threads::Mutex _lock
 

Static Private Attributes

static URIMapuri_map
 

Detailed Description

Implementation of the LV2 uri-map and urid extensions.

This just uses a pair of std::map and is not so great in the space overhead department, but it's fast enough and not really performance critical anyway.

Definition at line 42 of file uri_map.h.

Member Typedef Documentation

typedef std::map<const std::string, uint32_t> ARDOUR::URIMap::Map
private

Definition at line 91 of file uri_map.h.

typedef std::map<uint32_t, const std::string> ARDOUR::URIMap::Unmap
private

Definition at line 92 of file uri_map.h.

Constructor & Destructor Documentation

ARDOUR::URIMap::URIMap ( )

Definition at line 112 of file uri_map.cc.

Member Function Documentation

const char * ARDOUR::URIMap::id_to_uri ( uint32_t  id) const

Definition at line 149 of file uri_map.cc.

URIMap & ARDOUR::URIMap::instance ( )
static

Definition at line 66 of file uri_map.cc.

LV2_Feature* ARDOUR::URIMap::uri_map_feature ( )
inline

Definition at line 48 of file uri_map.h.

uint32_t ARDOUR::URIMap::uri_to_id ( const char *  uri)

Definition at line 133 of file uri_map.cc.

LV2_URID_Map* ARDOUR::URIMap::urid_map ( )
inline

Definition at line 52 of file uri_map.h.

LV2_Feature* ARDOUR::URIMap::urid_map_feature ( )
inline

Definition at line 49 of file uri_map.h.

LV2_URID_Unmap* ARDOUR::URIMap::urid_unmap ( )
inline

Definition at line 53 of file uri_map.h.

LV2_Feature* ARDOUR::URIMap::urid_unmap_feature ( )
inline

Definition at line 50 of file uri_map.h.

Member Data Documentation

Glib::Threads::Mutex ARDOUR::URIMap::_lock
mutableprivate

Definition at line 104 of file uri_map.h.

Map ARDOUR::URIMap::_map
private

Definition at line 94 of file uri_map.h.

Unmap ARDOUR::URIMap::_unmap
private

Definition at line 95 of file uri_map.h.

LV2_Feature ARDOUR::URIMap::_uri_map_feature
private

Definition at line 97 of file uri_map.h.

LV2_URI_Map_Feature ARDOUR::URIMap::_uri_map_feature_data
private

Definition at line 98 of file uri_map.h.

LV2_Feature ARDOUR::URIMap::_urid_map_feature
private

Definition at line 99 of file uri_map.h.

LV2_URID_Map ARDOUR::URIMap::_urid_map_feature_data
private

Definition at line 100 of file uri_map.h.

LV2_Feature ARDOUR::URIMap::_urid_unmap_feature
private

Definition at line 101 of file uri_map.h.

LV2_URID_Unmap ARDOUR::URIMap::_urid_unmap_feature_data
private

Definition at line 102 of file uri_map.h.

URIMap * ARDOUR::URIMap::uri_map
staticprivate

Definition at line 106 of file uri_map.h.

URIDs ARDOUR::URIMap::urids

Definition at line 88 of file uri_map.h.


The documentation for this class was generated from the following files: