view data/fileio/PlaylistFileReader.h @ 328:21bd032ae791

* Introduce new Transform class which contains data necessary to describe the context for a plugin -- the plugin's name and output, the step/block size etc (formerly spread across ExecutionContext and TransformFactory). Other code hasn't been updated to use this yet. * Rename existing Transform stuff to Transformers (because they run Transforms) I'm still not 100% sure about this change, don't rely on it.
author Chris Cannam
date Mon, 05 Nov 2007 15:31:06 +0000
parents c022976d18e8
children d030801113b6
line wrap: on
line source
/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */

/*
    Sonic Visualiser
    An audio file viewer and annotation editor.
    Centre for Digital Music, Queen Mary, University of London.
    This file copyright 2007 QMUL.
    
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
    published by the Free Software Foundation; either version 2 of the
    License, or (at your option) any later version.  See the file
    COPYING included with this distribution for more information.
*/

#ifndef _PLAYLIST_FILE_READER_H_
#define _PLAYLIST_FILE_READER_H_

#include <QString>

#include <vector>
#include <set>

class QFile;

class PlaylistFileReader
{
public:
    typedef std::vector<QString> Playlist;

    PlaylistFileReader(QString path);
    virtual ~PlaylistFileReader();

    virtual bool isOK() const;
    virtual QString getError() const;
    virtual Playlist load() const;

    static void getSupportedExtensions(std::set<QString> &extensions);

protected:
    QFile *m_file;
    QString m_error;
};

#endif