From afd64439fdccc8b8b1245b210d49f640e608a99d Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 4 Aug 2007 14:35:08 +0000 Subject: changed decoder API git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@58 90c681e8-e032-0410-971d-27865f9a5e38 --- lib/decoderfactory.h | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'lib/decoderfactory.h') diff --git a/lib/decoderfactory.h b/lib/decoderfactory.h index 651c19745..c73b92c62 100644 --- a/lib/decoderfactory.h +++ b/lib/decoderfactory.h @@ -1,3 +1,4 @@ + /*************************************************************************** * Copyright (C) 2006 by Ilya Kotov * * forkotov02@hotmail.ru * @@ -31,15 +32,25 @@ class Decoder; class Output; class FileTag; +struct DecoderProperties +{ + QString name; + QString filter; + QString description; + QString contentType; + bool hasAbout; + bool hasSettings; + //bool streamSupport; + //bool needInput; +}; + class DecoderFactory { public: virtual ~DecoderFactory() {} virtual bool supports(const QString &source) const = 0; - virtual const QString &name() const = 0; - virtual const QString &filter() const = 0; - virtual const QString &description() const = 0; //i.e. file description - virtual const QString &contentType() const = 0; + virtual bool canDecode(QIODevice *) const = 0; + virtual const DecoderProperties &properties() const = 0; virtual Decoder *create(QObject *, QIODevice *, Output *) = 0; virtual FileTag *createTag(const QString &source) = 0; virtual void showDetails(QWidget *parent, const QString &path) = 0; -- cgit v1.2.3-13-gbd6f