LMMS
Loading...
Searching...
No Matches
lmms::Lv2Features Class Reference

#include <Lv2Features.h>

Public Member Functions

 Lv2Features ()
void initCommon ()
 Register only plugin-common features.
void *& operator[] (const char *featName)
 Return reference to feature data with given URI featName.
void createFeatureVectors ()
 Fill m_features and m_featurePointers with all features.
const LV2_Feature *constfeaturePointers () const
 Return LV2_Feature pointer vector, suited for lilv_plugin_instantiate.
void clear ()
 Clear everything.

Static Public Member Functions

static bool isFeatureSupported (const char *featName)
 Return if a feature is supported by LMMS.

Private Attributes

std::vector< LV2_Featurem_features
 feature storage
std::vector< const LV2_Feature * > m_featurePointers
 pointers to m_features, required for lilv_plugin_instantiate
std::map< std::string_view, void * > m_featureByUri
 features + data, ordered by URI

Detailed Description

Feature container

References all available features for a plugin and maps them to their URIs.

The public member functions should be called in descending order:

  1. initCommon: map plugin-common features
  2. operator[]: map plugin-specific features
  3. createFeatureVectors: create the feature vectors required for lilv_plugin_instantiate
  4. access the latter

Constructor & Destructor Documentation

◆ Lv2Features()

lmms::Lv2Features::Lv2Features ( )

Member Function Documentation

◆ clear()

void lmms::Lv2Features::clear ( )

Clear everything.

◆ createFeatureVectors()

void lmms::Lv2Features::createFeatureVectors ( )

Fill m_features and m_featurePointers with all features.

◆ featurePointers()

const LV2_Feature *const * lmms::Lv2Features::featurePointers ( ) const
inline

Return LV2_Feature pointer vector, suited for lilv_plugin_instantiate.

◆ initCommon()

void lmms::Lv2Features::initCommon ( )

Register only plugin-common features.

◆ isFeatureSupported()

bool lmms::Lv2Features::isFeatureSupported ( const char * featName)
static

Return if a feature is supported by LMMS.

◆ operator[]()

void *& lmms::Lv2Features::operator[] ( const char * featName)

Return reference to feature data with given URI featName.

Member Data Documentation

◆ m_featureByUri

std::map<std::string_view, void*> lmms::Lv2Features::m_featureByUri
private

features + data, ordered by URI

◆ m_featurePointers

std::vector<const LV2_Feature*> lmms::Lv2Features::m_featurePointers
private

pointers to m_features, required for lilv_plugin_instantiate

◆ m_features

std::vector<LV2_Feature> lmms::Lv2Features::m_features
private

feature storage


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