void VolumeFaderEffect::setParameterValue(const EffectParameter &p, const QVariant &newValue) { K_XT(VolumeFaderEffect); const int parameterId = p.id(); debug() << Q_FUNC_INFO << parameterId << newValue; switch (static_cast<ParameterIds>(parameterId)) { case VolumeParameter: setVolume(newValue.toDouble()); break; case FadeCurveParameter: setFadeCurve(static_cast<Phonon::VolumeFaderEffect::FadeCurve>(newValue.toInt())); break; case FadeToParameter: xt->m_parameters.fadeTo = newValue.toDouble(); break; case FadeTimeParameter: xt->m_parameters.fadeTime = newValue.toInt(); break; case StartFadeParameter: if (newValue.toBool()) { fadeTo(xt->m_parameters.fadeTo, xt->m_parameters.fadeTime); } break; default: qWarning() << "request for unknown parameter " << parameterId; break; } }
int EnvironmentalReverb::effectParameterChanged(const EffectParameter ¶m, const QVariant &value) { const qreal externalLevel = value.toReal(); const int internalLevel = param.toInternalValue(externalLevel); TInt err = 0; switch(param.id()) { case DecayHFRatio: TRAP(err, concreteEffect()->SetDecayHFRatioL(internalLevel)); break; case DecayTime: TRAP(err, concreteEffect()->SetDecayTimeL(internalLevel)); break; case Density: TRAP(err, concreteEffect()->SetDensityL(internalLevel)); break; case Diffusion: TRAP(err, concreteEffect()->SetDiffusionL(internalLevel)); break; case ReflectionsDelay: TRAP(err, concreteEffect()->SetReflectionsDelayL(internalLevel)); break; case ReflectionsLevel: TRAP(err, concreteEffect()->SetReflectionsLevelL(internalLevel)); break; case ReverbDelay: TRAP(err, concreteEffect()->SetReverbDelayL(internalLevel)); break; case ReverbLevel: TRAP(err, concreteEffect()->SetReverbLevelL(internalLevel)); break; case RoomHFLevel: TRAP(err, concreteEffect()->SetRoomHFLevelL(internalLevel)); break; case RoomLevel: TRAP(err, concreteEffect()->SetRoomLevelL(internalLevel)); break; default: Q_ASSERT_X(false, Q_FUNC_INFO, "Unknown parameter"); } return err; }
void EffectSettingsWidget::resetDefaults() { for (int i = 0; i < m_parameters.count(); ++i) { EffectParameter parameter = m_parameters.at(i); switch (parameter.type()) { case QVariant::Int: if (QSlider *slider = qobject_cast<QSlider *>(m_selectors.at(i))) slider->setValue(parameter.defaultValue().toInt()); break; case QVariant::Color: if (ColorPicker *picker = qobject_cast<ColorPicker *>(m_selectors.at(i))) picker->setColor(qvariant_cast<QColor>(parameter.defaultValue())); break; default: break; } } }
Effect::Effect(EffectsManager* pEffectsManager, EffectManifestPointer pManifest, EffectInstantiatorPointer pInstantiator) : QObject(), // no parent m_pEffectsManager(pEffectsManager), m_pManifest(pManifest), m_pInstantiator(pInstantiator), m_pEngineEffect(NULL), m_bAddedToEngine(false), m_bEnabled(false) { for (const auto& pManifestParameter: m_pManifest->parameters()) { EffectParameter* pParameter = new EffectParameter( this, pEffectsManager, m_parameters.size(), pManifestParameter); m_parameters.append(pParameter); if (m_parametersById.contains(pParameter->id())) { qWarning() << debugString() << "WARNING: Loaded EffectManifest that had parameters with duplicate IDs. Dropping one of them."; } m_parametersById[pParameter->id()] = pParameter; } //qDebug() << debugString() << "created" << this; }
QMap<QString, QVariant> EffectSettingsWidget::settings() const { QMap<QString, QVariant> settings; for (int i = 0; i < m_parameters.count(); ++i) { EffectParameter parameter = m_parameters.at(i); switch (parameter.type()) { case QVariant::Int: if (QSlider *slider = qobject_cast<QSlider *>(m_selectors.at(i))) settings.insert(parameter.key(), slider->value()); break; case QVariant::Color: if (ColorPicker *picker = qobject_cast<ColorPicker *>(m_selectors.at(i))) settings.insert(parameter.key(), picker->color()); break; default: break; } } return settings; }
QVariant VolumeFaderEffect::parameterValue(const EffectParameter &p) const { K_XT(const VolumeFaderEffect); const int parameterId = p.id(); debug() << Q_FUNC_INFO << parameterId; switch (static_cast<ParameterIds>(parameterId)) { case VolumeParameter: return static_cast<double>(volume()); case FadeCurveParameter: return static_cast<int>(fadeCurve()); case FadeToParameter: return static_cast<double>(xt->m_parameters.fadeTo); case FadeTimeParameter: return xt->m_parameters.fadeTime; case StartFadeParameter: return 0; } qWarning() << "request for unknown parameter " << parameterId; return QVariant(); }
void VideoEffect::setParameterValue(const EffectParameter ¶meter, const QVariant &newValue) { IMPLEMENTED; objc_setCiFilterParameter(ciFilter, parameter.id(), newValue); }
QVariant VideoEffect::parameterValue(const EffectParameter ¶meter) const { IMPLEMENTED; return objc_getCiFilterParameter(ciFilter, parameter.id()); }