Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions src/engine/enginebuffer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,9 @@ EngineBuffer::EngineBuffer(QString group, UserSettingsPointer pConfig,
this, SLOT(slotEjectTrack(double)),
Qt::DirectConnection);

m_pTrackLoaded = new ControlObject(ConfigKey(m_group, "track_loaded"));
m_pTrackLoaded->connectValueChangeRequest(this, SLOT(slotTrackLoadedCO(double)));

// Quantization Controller for enabling and disabling the
// quantization (alignment) of loop in/out positions and (hot)cues with
// beats.
Expand Down Expand Up @@ -292,6 +295,7 @@ EngineBuffer::~EngineBuffer() {
delete m_pRepeat;
delete m_pSampleRate;

delete m_pTrackLoaded;
delete m_pTrackSamples;
delete m_pTrackSampleRate;

Expand Down Expand Up @@ -485,6 +489,12 @@ void EngineBuffer::slotTrackLoading() {
m_pTrackSamples->set(0); // Stop renderer
}

void EngineBuffer::slotTrackLoadedCO(double v) {
Q_UNUSED(v);
qWarning() << "WARNING:" << m_group << "\"track_loaded\""
<< "is a read-only control, ignoring.";
}

TrackPointer EngineBuffer::loadFakeTrack(double filebpm) {
TrackPointer pTrack(Track::newTemporary());
pTrack->setSampleRate(44100);
Expand Down Expand Up @@ -521,6 +531,7 @@ void EngineBuffer::slotTrackLoaded(TrackPointer pTrack,
m_bSlipEnabledProcessing = false;
m_dSlipPosition = 0.;
m_dSlipRate = 0;
m_pTrackLoaded->setAndConfirm(1);
// Reset the pitch value for the new track.
m_pause.unlock();

Expand Down Expand Up @@ -550,6 +561,7 @@ void EngineBuffer::ejectTrack() {
//qDebug() << "EngineBuffer::ejectTrack()";
m_pause.lock();
m_iTrackLoading = 0;
m_pTrackLoaded->setAndConfirm(0);
m_pTrackSamples->set(0);
m_pTrackSampleRate->set(0);
TrackPointer pTrack = m_pCurrentTrack;
Expand Down
2 changes: 2 additions & 0 deletions src/engine/enginebuffer.h
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,7 @@ class EngineBuffer : public EngineObject {

private slots:
void slotTrackLoading();
void slotTrackLoadedCO(double v);
void slotTrackLoaded(TrackPointer pTrack,
int iSampleRate, int iNumSamples);
void slotTrackLoadFailed(TrackPointer pTrack,
Expand Down Expand Up @@ -332,6 +333,7 @@ class EngineBuffer : public EngineObject {
ControlProxy* m_pPassthroughEnabled;

ControlPushButton* m_pEject;
ControlObject* m_pTrackLoaded;

// Whether or not to repeat the track when at the end
ControlPushButton* m_pRepeat;
Expand Down