annotate plugin/PluginIdentifier.h @ 305:fc656505c573

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