#include "ardour/data_type.h"
#include "ardour/types.h"
-#ifdef VST_SUPPORT
+#if defined VST_SUPPORT || defined LXVST_SUPPORT
#include "evoral/MIDIEvent.hpp"
struct VstEvents;
struct VstMidiEvent;
-#endif
+#endif
namespace ARDOUR {
void flush_lv2_midi(bool input, size_t i);
#endif
-#ifdef VST_SUPPORT
+#if defined VST_SUPPORT || defined LXVST_SUPPORT
VstEvents* get_vst_midi (size_t);
-#endif
+#endif
void read_from(const BufferSet& in, framecnt_t nframes);
+ void read_from(const BufferSet& in, framecnt_t nframes, DataType);
void merge_from(const BufferSet& in, framecnt_t nframes);
template <typename BS, typename B>
LV2Buffers _lv2_buffers;
#endif
-#ifdef VST_SUPPORT
+#if defined VST_SUPPORT || defined LXVST_SUPPORT
class VSTBuffer {
public:
VSTBuffer (size_t);
private:
/* prevent copy construction */
VSTBuffer (VSTBuffer const &);
-
+
VstEvents* _events; /// the parent VSTEvents struct
VstMidiEvent* _midi_events; ///< storage area for VSTMidiEvents
size_t _capacity;
};
-
+
typedef std::vector<VSTBuffer*> VSTBuffers;
VSTBuffers _vst_buffers;
-#endif
+#endif
/// Use counts (there may be more actual buffers than this)
ChanCount _count;