annotate plugin/PluginIdentifier.h @ 282:d9319859a4cf tip

(none)
author benoitrigolleau
date Fri, 31 Oct 2008 11:00:24 +0000
parents fc9323a41f5a
children
rev   line source
lbajardsilogic@0 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
lbajardsilogic@0 2
lbajardsilogic@0 3 /*
lbajardsilogic@0 4 Sonic Visualiser
lbajardsilogic@0 5 An audio file viewer and annotation editor.
lbajardsilogic@0 6 Centre for Digital Music, Queen Mary, University of London.
lbajardsilogic@0 7
lbajardsilogic@0 8 This program is free software; you can redistribute it and/or
lbajardsilogic@0 9 modify it under the terms of the GNU General Public License as
lbajardsilogic@0 10 published by the Free Software Foundation; either version 2 of the
lbajardsilogic@0 11 License, or (at your option) any later version. See the file
lbajardsilogic@0 12 COPYING included with this distribution for more information.
lbajardsilogic@0 13 */
lbajardsilogic@0 14
lbajardsilogic@0 15 /*
lbajardsilogic@0 16 This is a modified version of a source file from the
lbajardsilogic@0 17 Rosegarden MIDI and audio sequencer and notation editor.
lbajardsilogic@0 18 This file copyright 2000-2006 Chris Cannam and QMUL.
lbajardsilogic@0 19 */
lbajardsilogic@0 20
lbajardsilogic@0 21 #ifndef _PLUGIN_IDENTIFIER_H_
lbajardsilogic@0 22 #define _PLUGIN_IDENTIFIER_H_
lbajardsilogic@0 23
lbajardsilogic@0 24 #include <QString>
lbajardsilogic@0 25
lbajardsilogic@0 26
lbajardsilogic@0 27 // A plugin identifier is simply a string; this class provides methods
lbajardsilogic@0 28 // to parse it into its constituent bits (plugin type, DLL path and label).
lbajardsilogic@0 29
lbajardsilogic@0 30 class PluginIdentifier {
lbajardsilogic@0 31
lbajardsilogic@0 32 public:
lbajardsilogic@0 33
lbajardsilogic@0 34 static QString createIdentifier(QString type, QString soName, QString label);
lbajardsilogic@0 35
lbajardsilogic@0 36 static QString canonicalise(QString identifier);
lbajardsilogic@0 37
lbajardsilogic@0 38 static void parseIdentifier(QString identifier,
lbajardsilogic@0 39 QString &type, QString &soName, QString &label);
lbajardsilogic@0 40
lbajardsilogic@0 41 static bool areIdentifiersSimilar(QString id1, QString id2);
lbajardsilogic@0 42
lbajardsilogic@0 43 // Fake soName for use with plugins that are actually compiled in
lbajardsilogic@0 44 static QString BUILTIN_PLUGIN_SONAME;
lbajardsilogic@0 45
lbajardsilogic@0 46 // Not strictly related to identifiers
lbajardsilogic@0 47 static QString RESERVED_PROJECT_DIRECTORY_KEY;
lbajardsilogic@0 48 };
lbajardsilogic@0 49
lbajardsilogic@0 50 #endif