diff options
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/lxvst_plugin.h | 2 | ||||
-rw-r--r-- | libs/ardour/ardour/vestige/aeffectx.h | 59 | ||||
-rw-r--r-- | libs/ardour/ardour/vst_info_file.h | 1 | ||||
-rw-r--r-- | libs/ardour/ardour/windows_vst_plugin.h | 2 |
4 files changed, 51 insertions, 13 deletions
diff --git a/libs/ardour/ardour/lxvst_plugin.h b/libs/ardour/ardour/lxvst_plugin.h index f1a50b2f30..cc6f507144 100644 --- a/libs/ardour/ardour/lxvst_plugin.h +++ b/libs/ardour/ardour/lxvst_plugin.h @@ -33,7 +33,7 @@ class Session; class LIBARDOUR_API LXVSTPlugin : public VSTPlugin { public: - LXVSTPlugin (AudioEngine &, Session &, VSTHandle *); + LXVSTPlugin (AudioEngine &, Session &, VSTHandle *, int unique_id); LXVSTPlugin (const LXVSTPlugin &); ~LXVSTPlugin (); diff --git a/libs/ardour/ardour/vestige/aeffectx.h b/libs/ardour/ardour/vestige/aeffectx.h index 2dca9f26be..5b7d69c411 100644 --- a/libs/ardour/ardour/vestige/aeffectx.h +++ b/libs/ardour/ardour/vestige/aeffectx.h @@ -101,6 +101,8 @@ #define effEditIdle 19 #define effEditTop 20 #define effProcessEvents 25 +// the next one from http://asseca.com/vst-24-specs/index.html +#define effGetPlugCategory 35 #define effGetEffectName 45 #define effGetVendorString 47 #define effGetProductString 48 @@ -191,21 +193,58 @@ struct _VstEvents VstEvent * events[]; }; +/* constants from http://www.rawmaterialsoftware.com/juceforum/viewtopic.php?t=3740&sid=183f74631fee71a493316735e2b9f28b */ + +enum Vestige2StringConstants +{ + VestigeMaxNameLen = 64, + VestigeMaxLabelLen = 64, + VestigeMaxShortLabelLen = 8, + VestigeMaxCategLabelLen = 24, + VestigeMaxFileNameLen = 100 +}; + + +/* constants from http://asseca.com/vst-24-specs/efGetPlugCategory.html */ + +enum VstPlugCategory +{ + kPlugCategUnknown = 0, + kPlugCategEffect, + kPlugCategSynth, + kPlugCategAnalysis, + kPlugCategMastering, + kPlugCategSpacializer, + kPlugCategRoomFx, + kPlugSurroundFx, + kPlugCategRestoration, + kPlugCategOfflineProcess, + kPlugCategShell, + kPlugCategGenerator, + kPlugCategMaxCount +}; + typedef struct _VstEvents VstEvents; /* this struct taken from http://asseca.com/vst-24-specs/efGetParameterProperties.html */ struct _VstParameterProperties { - float stepFloat; - float smallStepFloat; - float largeStepFloat; - char label[64]; - int32_t flags; - int32_t minInteger; - int32_t maxInteger; - int32_t stepInteger; - int32_t largeStepInteger; - char shortLabel[8]; + float stepFloat; /* float step */ + float smallStepFloat; /* small float step */ + float largeStepFloat; /* large float step */ + char label[VestigeMaxLabelLen]; /* parameter label */ + int32_t flags; /* @see VstParameterFlags */ + int32_t minInteger; /* integer minimum */ + int32_t maxInteger; /* integer maximum */ + int32_t stepInteger; /* integer step */ + int32_t largeStepInteger; /* large integer step */ + char shortLabel[VestigeMaxShortLabelLen]; /* short label, recommended: 6 + delimiter */ + int16_t displayIndex; /* index where this parameter should be displayed (starting with 0) */ + int16_t category; /* 0: no category, else group index + 1 */ + int16_t numParametersInCategory; /* number of parameters in category */ + int16_t reserved; /* zero */ + char categoryLabel[VestigeMaxCategLabelLen]; /* category label, e.g. "Osc 1" */ + char future[16]; /* reserved for future use */ }; typedef struct _VstParameterProperties VstParameterProperties; diff --git a/libs/ardour/ardour/vst_info_file.h b/libs/ardour/ardour/vst_info_file.h index ac7167bc90..21e9d19c65 100644 --- a/libs/ardour/ardour/vst_info_file.h +++ b/libs/ardour/ardour/vst_info_file.h @@ -25,7 +25,6 @@ #include "ardour/vst_types.h" #include <vector> -LIBARDOUR_API extern void vstfx_free_info (VSTInfo *); LIBARDOUR_API extern void vstfx_free_info_list (std::vector<VSTInfo *> *infos); #ifdef LXVST_SUPPORT diff --git a/libs/ardour/ardour/windows_vst_plugin.h b/libs/ardour/ardour/windows_vst_plugin.h index ee4850dc05..17b72ac8da 100644 --- a/libs/ardour/ardour/windows_vst_plugin.h +++ b/libs/ardour/ardour/windows_vst_plugin.h @@ -33,7 +33,7 @@ class Session; class LIBARDOUR_API WindowsVSTPlugin : public VSTPlugin { public: - WindowsVSTPlugin (AudioEngine &, Session &, VSTHandle *); + WindowsVSTPlugin (AudioEngine &, Session &, VSTHandle *, int unique_id); WindowsVSTPlugin (const WindowsVSTPlugin &); ~WindowsVSTPlugin (); |