Krita Source Code Documentation
Loading...
Searching...
No Matches
KisMediaEncoderWrapper Class Reference

#include <KisMediaEncoderWrapper.h>

+ Inheritance diagram for KisMediaEncoderWrapper:

Signals

void sigCancelRequested ()
 
void sigFinished ()
 
void sigFinishedWithError (QString message)
 
void sigProgressUpdated (int frameNo)
 
void sigStarted ()
 

Public Member Functions

 KisMediaEncoderWrapper (QObject *parent=nullptr)
 
void reset ()
 
void startNonBlocking (const KisMediaEncoderWrapperSettings &settings)
 
 ~KisMediaEncoderWrapper () override
 

Static Public Member Functions

static KisMediaEncoderFormatgetFormatByKey (const QString &key)
 
static const QVector< KisMediaEncoderFormat * > & getSupportedFormats ()
 

Static Private Member Functions

static KisMediaEncoderRunnablemakeSupportedRunnable (const KisMediaEncoderWrapperSettings &settings)
 

Private Attributes

QPointer< KisMediaEncoderRunnablem_runnable
 

Detailed Description

Definition at line 128 of file KisMediaEncoderWrapper.h.

Constructor & Destructor Documentation

◆ KisMediaEncoderWrapper()

KisMediaEncoderWrapper::KisMediaEncoderWrapper ( QObject * parent = nullptr)
explicit

Definition at line 140 of file KisMediaEncoderWrapper.cpp.

141 : QObject(parent)
142{
143}

◆ ~KisMediaEncoderWrapper()

KisMediaEncoderWrapper::~KisMediaEncoderWrapper ( )
override

Definition at line 145 of file KisMediaEncoderWrapper.cpp.

146{
147 reset();
148}

References reset().

Member Function Documentation

◆ getFormatByKey()

KisMediaEncoderFormat * KisMediaEncoderWrapper::getFormatByKey ( const QString & key)
static

Definition at line 218 of file KisMediaEncoderWrapper.cpp.

219{
221 if (format->key() == key) {
222 return format;
223 }
224 }
225 return nullptr;
226}
static const QVector< KisMediaEncoderFormat * > & getSupportedFormats()

References getSupportedFormats().

◆ getSupportedFormats()

const QVector< KisMediaEncoderFormat * > & KisMediaEncoderWrapper::getSupportedFormats ( )
static

Definition at line 206 of file KisMediaEncoderWrapper.cpp.

207{
208 static QVector<KisMediaEncoderFormat *> *supportedFormats;
209 if (!supportedFormats) {
210 supportedFormats = new QVector<KisMediaEncoderFormat *>();
211#ifdef Q_OS_ANDROID
213#endif
214 }
215 return *supportedFormats;
216}
static void getSupportedFormats(QVector< KisMediaEncoderFormat * > &outSupportedFormats)

References KisAndroidMediaEncoderRunnable::getSupportedFormats().

◆ makeSupportedRunnable()

KisMediaEncoderRunnable * KisMediaEncoderWrapper::makeSupportedRunnable ( const KisMediaEncoderWrapperSettings & settings)
staticprivate

Definition at line 228 of file KisMediaEncoderWrapper.cpp.

229{
231
232#ifdef Q_OS_ANDROID
233 {
235 if (androidRunnable) {
236 return androidRunnable;
237 }
238 }
239#endif
240
241 return nullptr;
242}
static KisAndroidMediaEncoderRunnable * create(const KisMediaEncoderWrapperSettings &settings, QObject *parent=nullptr)
#define KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE(cond, val)
Definition kis_assert.h:129

References KisAndroidMediaEncoderRunnable::create(), KisMediaEncoderWrapperSettings::format, and KIS_SAFE_ASSERT_RECOVER_RETURN_VALUE.

◆ reset()

void KisMediaEncoderWrapper::reset ( )

Definition at line 196 of file KisMediaEncoderWrapper.cpp.

197{
198 KisMediaEncoderRunnable *runnable = m_runnable.data();
199 if (runnable) {
200 m_runnable.clear();
201 Q_EMIT sigCancelRequested();
202 disconnect(runnable);
203 }
204}
QPointer< KisMediaEncoderRunnable > m_runnable

References m_runnable, and sigCancelRequested().

◆ sigCancelRequested

void KisMediaEncoderWrapper::sigCancelRequested ( )
signal

◆ sigFinished

void KisMediaEncoderWrapper::sigFinished ( )
signal

◆ sigFinishedWithError

void KisMediaEncoderWrapper::sigFinishedWithError ( QString message)
signal

◆ sigProgressUpdated

void KisMediaEncoderWrapper::sigProgressUpdated ( int frameNo)
signal

◆ sigStarted

void KisMediaEncoderWrapper::sigStarted ( )
signal

◆ startNonBlocking()

void KisMediaEncoderWrapper::startNonBlocking ( const KisMediaEncoderWrapperSettings & settings)

Definition at line 150 of file KisMediaEncoderWrapper.cpp.

151{
152 reset();
153
155 if (runnable) {
156 connect(runnable,
158 this,
160 Qt::QueuedConnection);
161 connect(runnable,
163 this,
165 Qt::QueuedConnection);
166 connect(runnable,
168 this,
170 Qt::QueuedConnection);
171 connect(runnable,
173 this,
175 Qt::QueuedConnection);
176 connect(runnable,
178 this,
180 Qt::QueuedConnection);
181 connect(this,
183 runnable,
185 Qt::QueuedConnection);
186
187 m_runnable = runnable;
188 runnable->setAutoDelete(true);
189 QThreadPool::globalInstance()->start(runnable);
190
191 } else {
192 Q_EMIT sigFinishedWithError(i18n("No encoder for the selected format found"));
193 }
194}
void sigFailed(const QString &errorMessage)
void sigProgressUpdated(int frameNo)
void sigFinishedWithError(QString message)
void sigProgressUpdated(int frameNo)
static KisMediaEncoderRunnable * makeSupportedRunnable(const KisMediaEncoderWrapperSettings &settings)

References m_runnable, makeSupportedRunnable(), reset(), KisMediaEncoderRunnable::sigCancelled(), sigCancelRequested(), KisMediaEncoderRunnable::sigCompleted(), KisMediaEncoderRunnable::sigFailed(), sigFinished(), sigFinishedWithError(), KisMediaEncoderRunnable::sigProgressUpdated(), sigProgressUpdated(), KisMediaEncoderRunnable::sigStarted(), sigStarted(), and KisMediaEncoderRunnable::slotHandleCancelRequested().

Member Data Documentation

◆ m_runnable

QPointer<KisMediaEncoderRunnable> KisMediaEncoderWrapper::m_runnable
private

Definition at line 152 of file KisMediaEncoderWrapper.h.


The documentation for this class was generated from the following files: