Merge pull request #2822 from jasp00/rm-track
Fix removal of track when notes are playing
This commit is contained in:
@@ -28,12 +28,14 @@
|
||||
#include <QtCore/QPair>
|
||||
#include <QtCore/QMutex>
|
||||
#include <QtCore/QThread>
|
||||
#include <samplerate.h>
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "lmms_basics.h"
|
||||
#include "TabWidget.h"
|
||||
|
||||
|
||||
class AudioPort;
|
||||
class Mixer;
|
||||
|
||||
|
||||
class AudioDevice
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "AudioDevice.h"
|
||||
#include "AudioDeviceSetupWidget.h"
|
||||
#include "MicroTimer.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
class AudioDummy : public AudioDevice, public QThread
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
#include <QtCore/QMutex>
|
||||
#include <QtCore/QMutexLocker>
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "MemoryManager.h"
|
||||
#include "PlayHandle.h"
|
||||
|
||||
|
||||
@@ -51,6 +51,8 @@ public:
|
||||
#include <portaudio.h>
|
||||
#endif
|
||||
|
||||
#include <QtCore/QSemaphore>
|
||||
|
||||
#include "AudioDevice.h"
|
||||
#include "AudioDeviceSetupWidget.h"
|
||||
|
||||
|
||||
@@ -39,7 +39,6 @@
|
||||
#include <math.h>
|
||||
|
||||
#include "lmms_basics.h"
|
||||
#include "Mixer.h"
|
||||
#include "templates.h"
|
||||
#include "lmms_constants.h"
|
||||
#include "interpolation.h"
|
||||
|
||||
@@ -28,9 +28,9 @@
|
||||
#define CONTROLLER_H
|
||||
|
||||
#include "Engine.h"
|
||||
#include "Mixer.h"
|
||||
#include "Model.h"
|
||||
#include "JournallingObject.h"
|
||||
#include "templates.h"
|
||||
#include "ValueBuffer.h"
|
||||
|
||||
class ControllerDialog;
|
||||
|
||||
@@ -32,6 +32,8 @@
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
class DummyInstrument : public Instrument
|
||||
{
|
||||
|
||||
@@ -28,7 +28,6 @@
|
||||
|
||||
#include "Model.h"
|
||||
#include "SerializingObject.h"
|
||||
#include "Mixer.h"
|
||||
#include "AutomatableModel.h"
|
||||
|
||||
class Effect;
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
#define FX_MIXER_H
|
||||
|
||||
#include "Model.h"
|
||||
#include "Mixer.h"
|
||||
#include "EffectChain.h"
|
||||
#include "JournallingObject.h"
|
||||
#include "ThreadableJob.h"
|
||||
|
||||
@@ -25,7 +25,6 @@
|
||||
#ifndef INSTRUMENT_SOUND_SHAPING_H
|
||||
#define INSTRUMENT_SOUND_SHAPING_H
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "ComboBoxModel.h"
|
||||
|
||||
|
||||
|
||||
@@ -29,21 +29,11 @@
|
||||
|
||||
#include "lmmsconfig.h"
|
||||
|
||||
#ifndef LMMS_USE_3RDPARTY_LIBSRC
|
||||
#include <samplerate.h>
|
||||
#else
|
||||
#ifndef OUT_OF_TREE_BUILD
|
||||
#include "src/3rdparty/samplerate/samplerate.h"
|
||||
#else
|
||||
#include <samplerate.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#include <QtCore/QMutex>
|
||||
#include <QtCore/QThread>
|
||||
#include <QtCore/QVector>
|
||||
#include <QtCore/QWaitCondition>
|
||||
#include <samplerate.h>
|
||||
|
||||
|
||||
#include "lmms_basics.h"
|
||||
@@ -346,6 +336,9 @@ public:
|
||||
inline bool isMetronomeActive() const { return m_metronomeActive; }
|
||||
inline void setMetronomeActive(bool value = true) { m_metronomeActive = value; }
|
||||
|
||||
void requestChangeInModel();
|
||||
void doneChangeInModel();
|
||||
|
||||
|
||||
signals:
|
||||
void qualitySettingsChanged();
|
||||
@@ -388,6 +381,9 @@ private:
|
||||
const surroundSampleFrame * renderNextBuffer();
|
||||
|
||||
|
||||
void runChangesInModel();
|
||||
|
||||
|
||||
|
||||
QVector<AudioPort *> m_audioPorts;
|
||||
|
||||
@@ -420,6 +416,8 @@ private:
|
||||
struct qualitySettings m_qualitySettings;
|
||||
float m_masterGain;
|
||||
|
||||
bool m_isProcessing;
|
||||
|
||||
// audio device stuff
|
||||
AudioDevice * m_audioDev;
|
||||
AudioDevice * m_oldAudioDev;
|
||||
@@ -444,6 +442,15 @@ private:
|
||||
|
||||
bool m_metronomeActive;
|
||||
|
||||
bool m_changesSignal;
|
||||
bool m_waitForMixer;
|
||||
unsigned int m_changes;
|
||||
QMutex m_changesMutex;
|
||||
QMutex m_doChangesMutex;
|
||||
QMutex m_waitChangesMutex;
|
||||
QWaitCondition m_changesMixerCondition;
|
||||
QWaitCondition m_changesRequestCondition;
|
||||
|
||||
friend class LmmsCore;
|
||||
friend class MixerWorkerThread;
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
|
||||
#include "AudioFileDevice.h"
|
||||
#include "lmmsconfig.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
class ProjectRenderer : public QThread
|
||||
|
||||
@@ -38,7 +38,6 @@
|
||||
#include "lmms_basics.h"
|
||||
#include "lmms_math.h"
|
||||
#include "shared_object.h"
|
||||
#include "Mixer.h"
|
||||
#include "MemoryManager.h"
|
||||
|
||||
|
||||
|
||||
@@ -25,9 +25,9 @@
|
||||
#ifndef SAMPLE_PLAY_HANDLE_H
|
||||
#define SAMPLE_PLAY_HANDLE_H
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "SampleBuffer.h"
|
||||
#include "AutomatableModel.h"
|
||||
#include "PlayHandle.h"
|
||||
|
||||
class BBTrack;
|
||||
class SampleTCO;
|
||||
|
||||
@@ -29,7 +29,8 @@
|
||||
#include <QtCore/QList>
|
||||
#include <QtCore/QPair>
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "MidiTime.h"
|
||||
#include "PlayHandle.h"
|
||||
#include "SampleBuffer.h"
|
||||
|
||||
class BBTrack;
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <QWidget>
|
||||
#include <QPixmap>
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "lmms_basics.h"
|
||||
|
||||
|
||||
class VisualizationWidget : public QWidget
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "InstrumentPlayHandle.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "Knob.h"
|
||||
#include "Song.h"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include "Engine.h"
|
||||
#include "Song.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "interpolation.h"
|
||||
#include "gui_templates.h"
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "LedCheckbox.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "Oscillator.h"
|
||||
#include "PixmapButton.h"
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "gui_templates.h"
|
||||
#include "InstrumentPlayHandle.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
#include <QApplication>
|
||||
#include <QFileDialog>
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "KickerOsc.h"
|
||||
|
||||
|
||||
@@ -37,7 +37,6 @@
|
||||
#include "InstrumentView.h"
|
||||
#include "LedCheckbox.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include <QMutex>
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "Song.h"
|
||||
#include "lmms_math.h"
|
||||
#include "interpolation.h"
|
||||
#include "Mixer.h"
|
||||
#include "Oscillator.h"
|
||||
|
||||
#include "embed.cpp"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentPlayHandle.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
#include <QDomDocument>
|
||||
#include <QFile>
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "Oscillator.h"
|
||||
#include "PixmapButton.h"
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "base64.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "PixmapButton.h"
|
||||
#include "ToolTip.h"
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "InstrumentPlayHandle.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "Knob.h"
|
||||
#include "Song.h"
|
||||
|
||||
@@ -49,6 +49,7 @@ float frnd(float range)
|
||||
#include "Song.h"
|
||||
#include "MidiEvent.h"
|
||||
#include "MidiTime.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
#include "embed.cpp"
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "PixmapButton.h"
|
||||
#include "ToolTip.h"
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#include "gui_templates.h"
|
||||
#include "GuiApplication.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
#include "embed.cpp"
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Knob.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "PixmapButton.h"
|
||||
#include "SampleBuffer.h"
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "InstrumentTrack.h"
|
||||
#include "VstPlugin.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "GuiApplication.h"
|
||||
#include "PixmapButton.h"
|
||||
#include "StringPairDrag.h"
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "vibed.h"
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "ToolTip.h"
|
||||
#include "base64.h"
|
||||
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "ConfigManager.h"
|
||||
#include "GuiApplication.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "Song.h"
|
||||
#include "templates.h"
|
||||
#include "FileDialog.h"
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
#include <QTimer>
|
||||
#include <QWidget>
|
||||
|
||||
#include "Mixer.h"
|
||||
#include "JournallingObject.h"
|
||||
#include "communication.h"
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "ToolTip.h"
|
||||
#include "Song.h"
|
||||
#include "lmms_math.h"
|
||||
#include "Mixer.h"
|
||||
#include "interpolation.h"
|
||||
|
||||
#include "embed.cpp"
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "StringPairDrag.h"
|
||||
#include "RemoteZynAddSubFx.h"
|
||||
#include "LocalZynAddSubFx.h"
|
||||
#include "Mixer.h"
|
||||
#include "ControllerConnection.h"
|
||||
|
||||
#include "embed.cpp"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "AutomationPattern.h"
|
||||
#include "ControllerConnection.h"
|
||||
#include "lmms_math.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
float AutomatableModel::s_copiedValue = 0;
|
||||
long AutomatableModel::s_periodCounter = 0;
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
|
||||
#include "AutomationPatternView.h"
|
||||
#include "AutomationTrack.h"
|
||||
#include "Note.h"
|
||||
#include "ProjectJournal.h"
|
||||
#include "BBTrackContainer.h"
|
||||
#include "Song.h"
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
|
||||
#include "BufferManager.h"
|
||||
#include "FxMixer.h"
|
||||
#include "Mixer.h"
|
||||
#include "MixerWorkerThread.h"
|
||||
#include "MixHelpers.h"
|
||||
#include "Song.h"
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "embed.h"
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "PresetPreviewPlayHandle.h"
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "EnvelopeAndLfoParameters.h"
|
||||
#include "Instrument.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "NotePlayHandle.h"
|
||||
|
||||
|
||||
|
||||
@@ -71,12 +71,17 @@ Mixer::Mixer( bool renderOnly ) :
|
||||
m_numWorkers( QThread::idealThreadCount()-1 ),
|
||||
m_qualitySettings( qualitySettings::Mode_Draft ),
|
||||
m_masterGain( 1.0f ),
|
||||
m_isProcessing( false ),
|
||||
m_audioDev( NULL ),
|
||||
m_oldAudioDev( NULL ),
|
||||
m_audioDevStartFailed( false ),
|
||||
m_globalMutex( QMutex::Recursive ),
|
||||
m_profiler(),
|
||||
m_metronomeActive(false)
|
||||
m_metronomeActive(false),
|
||||
m_changesSignal( false ),
|
||||
m_waitForMixer( true ),
|
||||
m_changes( 0 ),
|
||||
m_doChangesMutex( QMutex::Recursive )
|
||||
{
|
||||
for( int i = 0; i < 2; ++i )
|
||||
{
|
||||
@@ -151,6 +156,8 @@ Mixer::Mixer( bool renderOnly ) :
|
||||
|
||||
Mixer::~Mixer()
|
||||
{
|
||||
runChangesInModel();
|
||||
|
||||
for( int w = 0; w < m_numWorkers; ++w )
|
||||
{
|
||||
m_workers[w]->quit();
|
||||
@@ -208,6 +215,8 @@ void Mixer::startProcessing( bool _needs_fifo )
|
||||
}
|
||||
|
||||
m_audioDev->startProcessing();
|
||||
|
||||
m_isProcessing = true;
|
||||
}
|
||||
|
||||
|
||||
@@ -215,6 +224,8 @@ void Mixer::startProcessing( bool _needs_fifo )
|
||||
|
||||
void Mixer::stopProcessing()
|
||||
{
|
||||
m_isProcessing = false;
|
||||
|
||||
if( m_fifoWriter != NULL )
|
||||
{
|
||||
m_fifoWriter->finish();
|
||||
@@ -447,6 +458,8 @@ const surroundSampleFrame * Mixer::renderNextBuffer()
|
||||
|
||||
emit nextAudioBuffer( m_readBuf );
|
||||
|
||||
runChangesInModel();
|
||||
|
||||
// and trigger LFOs
|
||||
EnvelopeAndLfoParameters::instances()->trigger();
|
||||
Controller::triggerFrameCounter();
|
||||
@@ -734,6 +747,58 @@ bool Mixer::hasNotePlayHandles()
|
||||
|
||||
|
||||
|
||||
void Mixer::requestChangeInModel()
|
||||
{
|
||||
m_changesMutex.lock();
|
||||
m_changes++;
|
||||
m_changesMutex.unlock();
|
||||
|
||||
m_doChangesMutex.lock();
|
||||
if ( m_isProcessing && m_waitForMixer )
|
||||
{
|
||||
m_waitForMixer = false;
|
||||
m_waitChangesMutex.lock();
|
||||
m_changesSignal = true;
|
||||
m_changesRequestCondition.wait( &m_waitChangesMutex );
|
||||
m_waitChangesMutex.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Mixer::doneChangeInModel()
|
||||
{
|
||||
m_changesMutex.lock();
|
||||
bool moreChanges = --m_changes;
|
||||
m_changesMutex.unlock();
|
||||
|
||||
if( !moreChanges )
|
||||
{
|
||||
m_waitForMixer = true;
|
||||
m_changesSignal = false;
|
||||
m_changesMixerCondition.wakeOne();
|
||||
}
|
||||
m_doChangesMutex.unlock();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Mixer::runChangesInModel()
|
||||
{
|
||||
if( m_changesSignal )
|
||||
{
|
||||
m_waitChangesMutex.lock();
|
||||
m_changesRequestCondition.wakeOne();
|
||||
m_changesMixerCondition.wait( &m_waitChangesMutex );
|
||||
m_waitChangesMutex.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
AudioDevice * Mixer::tryAudioDevices()
|
||||
{
|
||||
bool success_ful = false;
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "Instrument.h"
|
||||
#include "MidiEvent.h"
|
||||
#include "MidiPort.h"
|
||||
#include "Mixer.h"
|
||||
#include "Song.h"
|
||||
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "Instrument.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "MidiPort.h"
|
||||
#include "Mixer.h"
|
||||
#include "DataFile.h"
|
||||
#include "NotePlayHandle.h"
|
||||
#include "PluginFactory.h"
|
||||
|
||||
@@ -59,6 +59,7 @@
|
||||
#include "endian_handling.h"
|
||||
#include "Engine.h"
|
||||
#include "interpolation.h"
|
||||
#include "Mixer.h"
|
||||
#include "templates.h"
|
||||
|
||||
#include "FileDialog.h"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "BBTrack.h"
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "Pattern.h"
|
||||
#include "SampleBuffer.h"
|
||||
#include "SampleTrack.h"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "BBTrack.h"
|
||||
#include "Engine.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Mixer.h"
|
||||
#include "Pattern.h"
|
||||
#include "SampleBuffer.h"
|
||||
#include "SampleTrack.h"
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "ConfigManager.h"
|
||||
#include "Engine.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "Mixer.h"
|
||||
#include "gui_templates.h"
|
||||
#include "templates.h"
|
||||
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "AudioDevice.h"
|
||||
#include "ConfigManager.h"
|
||||
#include "debug.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
#include <vorbis/vorbisenc.h>
|
||||
#include <cstring>
|
||||
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
AudioFileOgg::AudioFileOgg( const sample_rate_t _sample_rate,
|
||||
const ch_cnt_t _channels,
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
#include "AudioFileWave.h"
|
||||
#include "endian_handling.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
AudioFileWave::AudioFileWave( const sample_rate_t _sample_rate,
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "LcdSpinBox.h"
|
||||
#include "AudioPort.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
|
||||
#include "endian_handling.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "Mixer.h"
|
||||
#include "Engine.h"
|
||||
#include "gui_templates.h"
|
||||
#include "templates.h"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "EffectChain.h"
|
||||
#include "FxMixer.h"
|
||||
#include "Engine.h"
|
||||
#include "Mixer.h"
|
||||
#include "MixHelpers.h"
|
||||
#include "BufferManager.h"
|
||||
#include "ValueBuffer.h"
|
||||
|
||||
@@ -48,6 +48,7 @@ void AudioPortAudioSetupUtil::updateChannels()
|
||||
#include "templates.h"
|
||||
#include "ComboBox.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
|
||||
AudioPortAudio::AudioPortAudio( bool & _success_ful, Mixer * _mixer ) :
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "endian_handling.h"
|
||||
#include "ConfigManager.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "Mixer.h"
|
||||
#include "gui_templates.h"
|
||||
#include "templates.h"
|
||||
#include "Engine.h"
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "debug.h"
|
||||
#include "ConfigManager.h"
|
||||
#include "gui_templates.h"
|
||||
#include "Mixer.h"
|
||||
#include "templates.h"
|
||||
|
||||
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "templates.h"
|
||||
#include "ComboBox.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "Mixer.h"
|
||||
|
||||
AudioSoundIo::AudioSoundIo( bool & outSuccessful, Mixer * _mixer ) :
|
||||
AudioDevice( tLimit<ch_cnt_t>(
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
|
||||
#include "MidiPort.h"
|
||||
#include "MidiClient.h"
|
||||
#include "Note.h"
|
||||
#include "Song.h"
|
||||
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#include "MidiController.h"
|
||||
#include "MidiClient.h"
|
||||
#include "MidiPortMenu.h"
|
||||
#include "Mixer.h"
|
||||
#include "LcdSpinBox.h"
|
||||
#include "LedCheckbox.h"
|
||||
#include "ComboBox.h"
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "Instrument.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "DataFile.h"
|
||||
#include "PluginFactory.h"
|
||||
#include "PresetPreviewPlayHandle.h"
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "embed.h"
|
||||
#include "GuiApplication.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "gui_templates.h"
|
||||
#include "InstrumentTrack.h"
|
||||
#include "Song.h"
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
#include "LcdSpinBox.h"
|
||||
#include "MainWindow.h"
|
||||
#include "MeterDialog.h"
|
||||
#include "Mixer.h"
|
||||
#include "TextFloat.h"
|
||||
#include "TimeLineWidget.h"
|
||||
#include "ToolTip.h"
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "GuiApplication.h"
|
||||
#include "gui_templates.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "embed.h"
|
||||
#include "Engine.h"
|
||||
#include "ToolTip.h"
|
||||
|
||||
@@ -69,6 +69,7 @@
|
||||
#include "MainWindow.h"
|
||||
#include "MidiClient.h"
|
||||
#include "MidiPortMenu.h"
|
||||
#include "Mixer.h"
|
||||
#include "MixHelpers.h"
|
||||
#include "DataFile.h"
|
||||
#include "NotePlayHandle.h"
|
||||
@@ -154,11 +155,15 @@ int InstrumentTrack::baseNote() const
|
||||
|
||||
InstrumentTrack::~InstrumentTrack()
|
||||
{
|
||||
Engine::mixer()->requestChangeInModel();
|
||||
|
||||
// kill all running notes and the iph
|
||||
silenceAllNotes( true );
|
||||
|
||||
// now we're save deleting the instrument
|
||||
if( m_instrument ) delete m_instrument;
|
||||
|
||||
Engine::mixer()->doneChangeInModel();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -44,11 +44,13 @@
|
||||
#include "StringPairDrag.h"
|
||||
#include "Knob.h"
|
||||
#include "MainWindow.h"
|
||||
#include "Mixer.h"
|
||||
#include "GuiApplication.h"
|
||||
#include "EffectRackView.h"
|
||||
#include "TrackLabelButton.h"
|
||||
#include "ConfigManager.h"
|
||||
#include "panning_constants.h"
|
||||
#include "volume.h"
|
||||
|
||||
|
||||
SampleTCO::SampleTCO( Track * _track ) :
|
||||
|
||||
Reference in New Issue
Block a user