/*
*/
#ifndef Phonon_GST_VIDEOEFFECT_H
#define Phonon_GST_VIDEOEFFECT_H

#include <QObject>
#include <phonon/videoframe.h>
#include <phonon/effectparameter.h>

namespace Phonon
{
namespace Gst
{
	class VideoEffect : public QObject
	{
		Q_OBJECT
		public:
			VideoEffect( int effectId, QObject* parent );
			~VideoEffect();
			Q_INVOKABLE QVariant value( int parameterId ) const;
			Q_INVOKABLE void setValue( int parameterId, QVariant newValue );

			Q_INVOKABLE QList<EffectParameter> parameterList() const;

			// Fake specific:
			virtual void processFrame( Phonon::VideoFrame& frame );

		private:
			QList<Phonon::EffectParameter> m_parameterList;
	};
}} //namespace Phonon::Gst

// vim: sw=4 ts=4 tw=80
#endif // Phonon_GST_VIDEOEFFECT_H
