Robin Gareus
619d523bbe
Fix state version for copy-construction (1/2)
...
In some cases copying an instance requires an explicit
set_state() call (e.g. copy internal plugin state). This is
done by calling `set_state(other->get_state())`.
::get_state() produces XML as matching current_state_version.
(not loading_state_version).
2022-11-04 17:51:09 +01:00
Robin Gareus
39fd3ff62a
VST2: use new scanner
2021-07-03 19:07:26 +02:00
Robin Gareus
767d5f93ba
Fix segfault when plugin insantiation fails
...
*PluginInfo::load() eventually calls `plugin->set_info()`
which depends on a valid PluginPtr. The method needs to return
early if `plugin` is unset or null.
2020-11-21 22:28:48 +01:00
Paul Davis
f470d3e856
remove all use of NO_PLUGIN_STATE #ifdef
...
We determined several years that we should never ever do this,
and changed the basis for the free/demo copy because of that.
2019-10-02 18:04:40 -06:00
Robin Gareus
a22f918d9d
Update libardour GPL boilerplate and (C) from git log
2019-08-03 15:53:16 +02:00
Robin Gareus
41abf75077
Consolidate VST Plugin Info
...
This unifies common PluginManager VST code to construct *VSTPluginInfo
and also provides a dedicated is_instrument() method for VST plugins.
2018-11-07 23:37:10 +01:00
Robin Gareus
4e1464e70f
Sort VST factory presets
...
This is more of a workaround than a fix. Simply by forcing the
URI to be sortable (VST-user presets are sorted at the end).
This eventually needs a deeper cleanup and API consolidation
PluginInfo::get_presets(bool) returns an ordered std::vector.
However this API is only used in a few cases where the plugin is
not instantiated. PluginInfo::get_presets(bool).
The problem is Plugin::get_presets(). The method returns
information that was previously cached by Plugin::find_presets() in
std::map<URI, ...>
2018-10-22 15:46:59 +02:00
Robin Gareus
fd8053da9e
Don't use VST ->user points, prefer host-reserved ptr
...
Apparently "user" is for plugins (not hosts) to use.
2017-07-08 18:13:42 +02:00
Tim Mayberry
a65c3ef28f
Remove unnecessary LocaleGuards from VSTPlugin derived classes
...
VSTPlugin::set_state and VSTPlugin::add_state methods both already contain
LocaleGuard instances.
2017-06-22 10:48:38 +10:00
Robin Gareus
e1095310a8
Rework VST initialization:
...
Set the AEffect* plugin pointer before calling effOpen.
effOpen may call back into the host (masterCallback) and invoke
actions which depend on _plugin (eg. to call back into the plugin again)
2017-03-07 00:13:56 +01:00
Robin Gareus
126dd02c85
Set rate and blocksize for multi-instance VSTs
2017-01-13 11:29:30 +01:00
Robin Gareus
ec31741ee6
copy VST state on copy construction
...
This fixes issues with replicate instances & plugin-analysis instances
not using the same set of parameters.
2016-11-13 16:35:06 +01:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
Paul Davis
17ace643e4
OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)
2016-05-04 23:09:45 -04:00
Robin Gareus
e6e7377cd8
API evolution
...
The Session-reference is only needed to instantiate/load the plugin.
Indexing presets is not supposed to call load() and be const WRT to
PluginInfo
2016-01-09 15:22:16 +01:00
Robin Gareus
1973e6ec93
lxvst preset name display (user presets only)
2016-01-07 22:58:27 +01:00
Paul Davis
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
Robin Gareus
2e0c98c489
remaining bits for VST-shell plugin support ..and more VST rework
2014-02-23 21:11:53 +01:00
Robin Gareus
cc960c4f07
remove executable mode-bit from files
2013-06-16 21:54:08 +02:00
Paul Davis
63b02a265a
Revert "fix LXVST support for plugins that make audioMaster callbacks from
...
within effOpen (e.g. glitch)"
This patch broke just about all other LVXST plugins. Glitch is doing something
wrong, or there is more magic about VST that we have yet to understand.
This reverts commit 56bc98f78b
.
2013-04-28 20:31:25 -04:00
Paul Davis
56bc98f78b
fix LXVST support for plugins that make audioMaster callbacks from within effOpen (e.g. glitch)
2013-04-10 08:32:39 -04:00
Carl Hetherington
7c87036ee3
Rename linux VST files to be more friendly.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10808 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-23 19:31:04 +00:00
Carl Hetherington
8e34ec7c0e
Use same VST callback for both Linux and Windows VSTs.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10775 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-22 16:30:58 +00:00
Carl Hetherington
d1226a8628
Push most of LXVSTPlugin and WindowsVSTPlugin up to VSTPlugin parent.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-22 15:14:41 +00:00
Carl Hetherington
ff98e0490d
Share VSTHandle and VSTInfo between windows/linux VSTs.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10758 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-22 01:28:34 +00:00
Carl Hetherington
d7b38512b8
Remove VESTIGE_HEADER stuff since we will always use it.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10755 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-22 00:15:46 +00:00
Paul Davis
eba4f18a92
fix a few warnings from newer versions of gcc
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10734 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-21 17:03:06 +00:00
Paul Davis
4085309cdb
make Stateful::_id private and provide appropriate methods to set it, and use them throughout ardour
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18 13:18:47 +00:00
Paul Davis
f81821c68e
update vestige header; fix 64 bit issues
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10185 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-03 19:56:30 +00:00
Paul Davis
0938a42440
fixes for 98% of all the warnings/errors reported by OS X gcc on tiger
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10179 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-30 17:55:14 +00:00
Carl Hetherington
fa9e3b3165
Fix warnings.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10124 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-26 15:01:19 +00:00
Paul Davis
23dfd4af19
minor correction in return type cast
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10121 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-25 20:07:02 +00:00
Paul Davis
2e59536dd8
a few coding style (indentation etc.) cleanups to LX VST code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-20 22:33:27 +00:00
Paul Davis
d4433b9ab3
(native) Linux VST support from LinuxDSP
...
git-svn-id: svn://localhost/ardour2/branches/3.0@10101 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-20 20:29:47 +00:00