kwave
18.07.70
|
#include <MultiTrackSource.h>
Public Member Functions | |
MultiTrackSource (unsigned int tracks, QObject *parent=Q_NULLPTR) | |
virtual | ~MultiTrackSource () Q_DECL_OVERRIDE |
virtual void | goOn () Q_DECL_OVERRIDE |
virtual bool | done () const Q_DECL_OVERRIDE |
virtual unsigned int | tracks () const Q_DECL_OVERRIDE |
virtual SOURCE * | at (unsigned int track) const |
virtual SOURCE * | operator[] (unsigned int track) Q_DECL_OVERRIDE |
virtual bool | insert (unsigned int track, SOURCE *source) |
virtual void | clear () |
![]() | |
SampleSource (QObject *parent=Q_NULLPTR) | |
virtual | ~SampleSource () |
![]() | |
StreamObject (QObject *parent=Q_NULLPTR) | |
virtual | ~StreamObject () |
virtual unsigned int | tracksOfPort (const char *port) const |
virtual Kwave::StreamObject * | port (const char *port, unsigned int track) |
virtual unsigned int | blockSize () const |
void | setAttribute (const char *attribute, const QVariant &value) |
Private Member Functions | |
void | runSource (SOURCE *src) |
Additional Inherited Members | |
![]() | |
void | attributeChanged (const QVariant value) |
![]() | |
static void | setInteractive (bool interactive) |
Template for easier handling of Kwave::SampleSource objects that consist of multiple independent tracks.
Definition at line 40 of file MultiTrackSource.h.
|
inline |
Default constructor, which does no initialization of the objects themselfes. If you want to use this, you should derive from this class, create all objects manually and "insert" them from the constructor.
tracks | number of tracks |
parent | a parent object, passed to QObject (optional) |
Definition at line 53 of file MultiTrackSource.h.
|
inlinevirtual |
Destructor
Reimplemented in Kwave::MultiTrackSource< SOURCE, true >.
Definition at line 63 of file MultiTrackSource.h.
|
inlinevirtual |
Returns the source that corresponds to one specific track if the object has multiple tracks. For single-track objects it returns "this" for the first index and 0 for all others
Definition at line 110 of file MultiTrackSource.h.
|
inlinevirtual |
Remove all tracks / sources
Definition at line 134 of file MultiTrackSource.h.
|
inlinevirtual |
Returns true when all sources are done
Reimplemented from Kwave::SampleSource.
Definition at line 89 of file MultiTrackSource.h.
Referenced by Kwave::VolumePlugin::run(), Kwave::AmplifyFreePlugin::run(), and Kwave::FilterPlugin::run().
|
inlinevirtual |
Calls goOn() for each track.
Implements Kwave::SampleSource.
Definition at line 72 of file MultiTrackSource.h.
Referenced by Kwave::OpusEncoder::fillInBuffer(), Kwave::SampleRatePlugin::run(), Kwave::VolumePlugin::run(), Kwave::AmplifyFreePlugin::run(), Kwave::NormalizePlugin::run(), Kwave::PlayBackPlugin::run(), and Kwave::FilterPlugin::run().
|
inlinevirtual |
Insert a new track with a source.
track | index of the track [0...N-1] |
source | pointer to a Kwave::SampleSource |
Reimplemented in Kwave::MultiTrackReader.
Definition at line 128 of file MultiTrackSource.h.
Referenced by Kwave::MultiTrackReader::insert().
|
inlinevirtual |
Reimplemented from Kwave::StreamObject.
Definition at line 115 of file MultiTrackSource.h.
|
inlineprivate |
little wrapper for calling goOn() of a source in a worker thread
Definition at line 142 of file MultiTrackSource.h.
|
inlinevirtual |
Returns the number of tracks that the source provides
Reimplemented from Kwave::StreamObject.
Definition at line 100 of file MultiTrackSource.h.
Referenced by Kwave::WavEncoder::encode(), Kwave::MimeData::encode(), Kwave::MP3Encoder::encode(), Kwave::Drag::encode(), Kwave::NormalizePlugin::getMaxPower(), Kwave::ReversePlugin::run(), and Kwave::DebugPlugin::run().