25 #ifndef LVTK_OPTIONS_HPP 26 #define LVTK_OPTIONS_HPP 28 #include <lv2/lv2plug.in/ns/ext/options/options.h> 31 #ifndef LVTK_OPTIONS_IFACE 32 #define LVTK_OPTIONS_IFACE 1 86 : index (0),m_size (0), p_opts (options)
96 if (p_opts == 0 || (p_opts[index].key == 0 &&
97 p_opts[index].value == 0))
100 return &p_opts[index++];
104 uint32_t
size()
const {
return m_size; }
115 const Option* p_opts;
129 template <
bool Required = false>
133 template <
class Derived>
134 struct I : Extension<Required>
138 I() : p_supplied_opts (0) { }
151 Derived* plugin (reinterpret_cast<Derived*> (instance));
153 mixin->p_supplied_opts = (Option*) data;
162 std::clog <<
" [Options] validation " 163 <<(this->m_ok ?
"succeeded" :
"failed")<<
"."<<std::endl;
172 #if LVTK_OPTIONS_IFACE 173 if (! strcmp (uri, LV2_OPTIONS__interface)) {