annotate data/fileio/AudioFileReaderFactory.h @ 263:71dfc6ab3b54

* Threaded mp3/ogg file reading. Not activated yet, as it doesn't work in context (SV needs to know the duration of its main model at the outset)
author Chris Cannam
date Thu, 24 May 2007 16:20:22 +0000
parents 1a42221a1522
children 20028c634494
rev   line source
Chris@148 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@148 2
Chris@148 3 /*
Chris@148 4 Sonic Visualiser
Chris@148 5 An audio file viewer and annotation editor.
Chris@148 6 Centre for Digital Music, Queen Mary, University of London.
Chris@148 7 This file copyright 2006 Chris Cannam.
Chris@148 8
Chris@148 9 This program is free software; you can redistribute it and/or
Chris@148 10 modify it under the terms of the GNU General Public License as
Chris@148 11 published by the Free Software Foundation; either version 2 of the
Chris@148 12 License, or (at your option) any later version. See the file
Chris@148 13 COPYING included with this distribution for more information.
Chris@148 14 */
Chris@148 15
Chris@148 16 #ifndef _AUDIO_FILE_READER_FACTORY_H_
Chris@148 17 #define _AUDIO_FILE_READER_FACTORY_H_
Chris@148 18
Chris@148 19 #include <QString>
Chris@148 20
Chris@148 21 class AudioFileReader;
Chris@148 22
Chris@148 23 class AudioFileReaderFactory
Chris@148 24 {
Chris@148 25 public:
Chris@148 26 /**
Chris@148 27 * Return the file extensions that we have audio file readers for,
Chris@148 28 * in a format suitable for use with QFileDialog. For example,
Chris@148 29 * "*.wav *.aiff *.ogg".
Chris@148 30 */
Chris@148 31 static QString getKnownExtensions();
Chris@148 32
Chris@148 33 /**
Chris@148 34 * Return an audio file reader initialised to the file at the
Chris@148 35 * given path, or NULL if no suitable reader for this path is
Chris@148 36 * available or the file cannot be opened.
Chris@148 37 * Caller owns the returned object and must delete it after use.
Chris@148 38 */
Chris@148 39 static AudioFileReader *createReader(QString path);
Chris@148 40 };
Chris@148 41
Chris@148 42 #endif
Chris@148 43