diff options
author | Robin Gareus <robin@gareus.org> | 2016-05-26 01:04:43 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-05-26 01:04:43 +0200 |
commit | cf6f9627e4bc8e3bc9997e26375a13b3956faa87 (patch) | |
tree | 08de6392e13e145e8e523558f3a30e89d95a06d4 /libs/ardour/ardour | |
parent | 1d48648a734423d2a1b1689efaa32e7f6452c5ea (diff) |
update VST audioMasterGetTime
* don't use a static struct. this fixes a concurrency issue with flags
and valid values
* send kVstTransportChanged IFF there is an actual change
* set system time
* send loop location
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/vestige/aeffectx.h | 1 | ||||
-rw-r--r-- | libs/ardour/ardour/vst_plugin.h | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/libs/ardour/ardour/vestige/aeffectx.h b/libs/ardour/ardour/vestige/aeffectx.h index 2b839f0ab1..25be89b09a 100644 --- a/libs/ardour/ardour/vestige/aeffectx.h +++ b/libs/ardour/ardour/vestige/aeffectx.h @@ -138,6 +138,7 @@ struct RemoteVstPlugin; #define kVstTransportChanged 1 #define kVstTransportPlaying (1 << 1) #define kVstTransportCycleActive (1 << 2) +#define kVstTransportRecording (1 << 3) #define kVstAutomationWriting (1 << 6) #define kVstAutomationReading (1 << 7) diff --git a/libs/ardour/ardour/vst_plugin.h b/libs/ardour/ardour/vst_plugin.h index e77ba892e3..3440534eb9 100644 --- a/libs/ardour/ardour/vst_plugin.h +++ b/libs/ardour/ardour/vst_plugin.h @@ -29,6 +29,8 @@ typedef struct _VSTHandle VSTHandle; struct _VSTState; typedef struct _VSTState VSTState; +#include "ardour/vestige/aeffectx.h" + namespace ARDOUR { class PluginInsert; @@ -86,6 +88,8 @@ public: void set_insert (PluginInsert* pi, uint32_t num) { _pi = pi; _num = num; } PluginInsert* plugin_insert () const { return _pi; } uint32_t plugin_number () const { return _num; } + VstTimeInfo* timeinfo () { return &_timeInfo; } + protected: void set_plugin (AEffect *); @@ -107,6 +111,7 @@ protected: uint32_t _num; MidiBuffer* _midi_out_buf; + VstTimeInfo _timeInfo; }; } |