X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fpluginlv2config.C;h=f104be00a1312abd29ec5a60c9e567363fc2edba;hb=8fe9a22b4600301fee74b27bd8e0c44f9d681079;hp=66c9a498b8e17811d6d1314b81b6fd42debe4266;hpb=803cf48f8f7ee246eb5473e55fc2125e8b398250;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/pluginlv2config.C b/cinelerra-5.1/cinelerra/pluginlv2config.C index 66c9a498..f104be00 100644 --- a/cinelerra-5.1/cinelerra/pluginlv2config.C +++ b/cinelerra-5.1/cinelerra/pluginlv2config.C @@ -23,6 +23,7 @@ #include "arraylist.h" #include "cstrdup.h" #include "language.h" +#include "pluginlv2.h" #include "pluginlv2config.h" #include @@ -127,6 +128,7 @@ PluginLV2ClientConfig::PluginLV2ClientConfig() mins = 0; maxs = 0; ctls = 0; + ports = 0; nb_ports = 0; } @@ -142,10 +144,11 @@ void PluginLV2ClientConfig::reset() delete [] names[i]; delete [] syms[i]; } - delete [] names; names = 0; - delete [] mins; mins = 0; - delete [] maxs; maxs = 0; - delete [] ctls; ctls = 0; + delete [] names; names = 0; + delete [] mins; mins = 0; + delete [] maxs; maxs = 0; + delete [] ctls; ctls = 0; + delete [] ports; ports = 0; nb_ports = 0; } @@ -171,6 +174,7 @@ void PluginLV2ClientConfig::copy_from(PluginLV2ClientConfig &that) mins = new float[nb_ports]; maxs = new float[nb_ports]; ctls = new float[nb_ports]; + ports = new int[nb_ports]; } for( int i=0; ilv2_AudioPort) ) port |= PORTS_AUDIO; + if( lilv_port_is_a(lilv, lp, lv2->lv2_ControlPort) ) port |= PORTS_CONTROL; + if( lilv_port_is_a(lilv, lp, lv2->lv2_InputPort) ) port |= PORTS_INPUT; + if( lilv_port_is_a(lilv, lp, lv2->lv2_OutputPort) ) port |= PORTS_OUTPUT; + if( lilv_port_is_a(lilv, lp, lv2->atom_AtomPort) ) port |= PORTS_ATOM; + ports[i] = port; } }