QVariant CameraBinImageProcessing::parameter( QCameraImageProcessingControl::ProcessingParameter parameter) const { switch (parameter) { case QCameraImageProcessingControl::WhiteBalancePreset: return QVariant::fromValue<QCameraImageProcessing::WhiteBalanceMode>(whiteBalanceMode()); case QCameraImageProcessingControl::ColorFilter: #ifdef HAVE_GST_PHOTOGRAPHY if (GstPhotography *photography = m_session->photography()) { #if GST_CHECK_VERSION(1, 0, 0) GstPhotographyColorToneMode mode = GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL; gst_photography_get_color_tone_mode(photography, &mode); #else GstColourToneMode mode = GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL; gst_photography_get_colour_tone_mode(photography, &mode); #endif return QVariant::fromValue(m_filterMap.key(mode, QCameraImageProcessing::ColorFilterNone)); } #endif return QVariant::fromValue(QCameraImageProcessing::ColorFilterNone); default: return m_values.contains(parameter) ? QVariant(m_values.value(parameter)) : QVariant(); } }
QVariant CameraBinImageProcessing::parameter( QCameraImageProcessingControl::ProcessingParameter parameter) const { switch (parameter) { case QCameraImageProcessingControl::WhiteBalancePreset: { const QCameraImageProcessing::WhiteBalanceMode mode = whiteBalanceMode(); #ifdef USE_V4L if (mode == QCameraImageProcessing::WhiteBalanceAuto || mode == QCameraImageProcessing::WhiteBalanceManual) { return m_v4lImageControl->parameter(parameter); } #endif return QVariant::fromValue<QCameraImageProcessing::WhiteBalanceMode>(mode); } case QCameraImageProcessingControl::ColorTemperature: { #ifdef USE_V4L return m_v4lImageControl->parameter(parameter); #else return QVariant(); #endif } case QCameraImageProcessingControl::ColorFilter: #ifdef HAVE_GST_PHOTOGRAPHY if (GstPhotography *photography = m_session->photography()) { #if GST_CHECK_VERSION(1, 0, 0) GstPhotographyColorToneMode mode = GST_PHOTOGRAPHY_COLOR_TONE_MODE_NORMAL; gst_photography_get_color_tone_mode(photography, &mode); #else GstColourToneMode mode = GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL; gst_photography_get_colour_tone_mode(photography, &mode); #endif return QVariant::fromValue(m_filterMap.key(mode, QCameraImageProcessing::ColorFilterNone)); } #endif return QVariant::fromValue(QCameraImageProcessing::ColorFilterNone); default: { const bool isGstParameterSupported = m_values.contains(parameter); #ifdef USE_V4L if (!isGstParameterSupported) { if (parameter == QCameraImageProcessingControl::BrightnessAdjustment || parameter == QCameraImageProcessingControl::ContrastAdjustment || parameter == QCameraImageProcessingControl::SaturationAdjustment || parameter == QCameraImageProcessingControl::SharpeningAdjustment) { return m_v4lImageControl->parameter(parameter); } } #endif return isGstParameterSupported ? QVariant(m_values.value(parameter)) : QVariant(); } } }