diff options
Diffstat (limited to 'src/imports/audioengine/qdeclarative_audiosample_p.cpp')
-rw-r--r-- | src/imports/audioengine/qdeclarative_audiosample_p.cpp | 246 |
1 files changed, 0 insertions, 246 deletions
diff --git a/src/imports/audioengine/qdeclarative_audiosample_p.cpp b/src/imports/audioengine/qdeclarative_audiosample_p.cpp deleted file mode 100644 index 2e521edd9..000000000 --- a/src/imports/audioengine/qdeclarative_audiosample_p.cpp +++ /dev/null @@ -1,246 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the plugins of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or (at your option) the GNU General -** Public license version 3 or any later version approved by the KDE Free -** Qt Foundation. The licenses are as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-2.0.html and -** https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qdeclarative_audiosample_p.h" -#include "qdeclarative_audioengine_p.h" -#include "qdebug.h" -#include "qsoundbuffer_p.h" -#include "qaudioengine_p.h" - -#define DEBUG_AUDIOENGINE - -QT_USE_NAMESPACE - -/*! - \qmltype AudioSample - \instantiates QDeclarativeAudioSample - \since 5.0 - \brief Load audio samples, mostly .wav. - \inqmlmodule QtAudioEngine - \ingroup multimedia_audioengine - \inherits Item - \preliminary - \deprecated - - It can be accessed through QtAudioEngine::AudioEngine::samples with its unique - name and must be defined inside AudioEngine or be added to it using - \l{QtAudioEngine::AudioEngine::addAudioSample()}{AudioEngine.addAudioSample()} - if AudioSample is created dynamically. - - \qml - Rectangle { - color:"white" - width: 300 - height: 500 - - AudioEngine { - id:audioengine - - AudioSample { - name:"explosion" - source: "explosion-02.wav" - } - } - } - \endqml -*/ -QDeclarativeAudioSample::QDeclarativeAudioSample(QObject *parent) - : QObject(parent) - , m_streaming(false) - , m_preloaded(false) - , m_soundBuffer(0) - , m_engine(0) -{ -} - -QDeclarativeAudioSample::~QDeclarativeAudioSample() -{ -} - -/*! - \qmlproperty url QtAudioEngine::AudioSample::source - - This property holds the source URL of the audio sample. -*/ -QUrl QDeclarativeAudioSample::source() const -{ - return m_url; -} - -void QDeclarativeAudioSample::setSource(const QUrl& url) -{ - if (m_engine) { - qWarning("AudioSample: source not changeable after initialization."); - return; - } - m_url = url; -} - -bool QDeclarativeAudioSample::isStreaming() const -{ - return m_streaming; -} - -QDeclarativeAudioEngine *QDeclarativeAudioSample::engine() const -{ - return m_engine; -} - -/*! - \qmlproperty bool QtAudioEngine::AudioSample::preloaded - - This property indicates whether this sample needs to be preloaded or not. - If \c true, the audio engine will start loading the sample file immediately - when the application starts, otherwise the sample will not be loaded until - explicitly requested. -*/ - -bool QDeclarativeAudioSample::isPreloaded() const -{ - return m_preloaded; -} - -/*! - \qmlproperty bool QtAudioEngine::AudioSample::loaded - - This property indicates whether this sample has been loaded into memory or not. -*/ -bool QDeclarativeAudioSample::isLoaded() const -{ - if (!m_soundBuffer) - return false; - return m_soundBuffer->state() == QSoundBuffer::Ready; -} - -/*! - \qmlmethod void QtAudioEngine::AudioSample::load() - - Starts loading the sample into memory if not loaded. -*/ -void QDeclarativeAudioSample::load() -{ - if (!m_soundBuffer) { - m_preloaded = true; - return; - } - if (m_soundBuffer->state() != QSoundBuffer::Loading && m_soundBuffer->state() != QSoundBuffer::Ready) - m_soundBuffer->load(); -} - -void QDeclarativeAudioSample::setPreloaded(bool preloaded) -{ - if (m_engine) { - qWarning("AudioSample: preloaded not changeable after initialization."); - return; - } - m_preloaded = preloaded; -} - -void QDeclarativeAudioSample::setStreaming(bool streaming) -{ - if (m_engine) { - qWarning("AudioSample: streaming not changeable after initialization."); - return; - } - m_streaming = streaming; -} - -void QDeclarativeAudioSample::setEngine(QDeclarativeAudioEngine *engine) -{ - if (m_engine) { - qWarning("AudioSample: engine not changeable after initialization."); - return; - } - m_engine = engine; -} - -/*! - \qmlproperty string QtAudioEngine::AudioSample::name - - This property holds the name of the sample, which must be unique among all - samples and only defined once. -*/ -QString QDeclarativeAudioSample::name() const -{ - return m_name; -} - -void QDeclarativeAudioSample::setName(const QString& name) -{ - if (m_engine) { - qWarning("AudioSample: name not changeable after initialization."); - return; - } - m_name = name; -} - -void QDeclarativeAudioSample::init() -{ - Q_ASSERT(m_engine != 0); - - if (m_streaming) { - //TODO - - } else { - m_soundBuffer = m_engine->engine()->getStaticSoundBuffer(m_url); - if (m_soundBuffer->state() == QSoundBuffer::Ready) { - emit loadedChanged(); - } else { - connect(m_soundBuffer, SIGNAL(ready()), this, SIGNAL(loadedChanged())); - } - if (m_preloaded) { - m_soundBuffer->load(); - } - } -} - -QSoundBuffer* QDeclarativeAudioSample::soundBuffer() const -{ - return m_soundBuffer; -} - -/*! - \qmlsignal QtAudioEngine::AudioSample::loadedChanged() - - This signal is emitted when \l loaded is changed. - - The corresponding handler is \c onLoadedChanged. -*/ - - |