#include <PluginScan.h>

Collaboration diagram for PluginScan:
Collaboration graph

Classes

struct  Candidate
 
class  Logger
 

Public Types

enum  PluginType { VampPlugin, LADSPAPlugin, DSSIPlugin }
 

Public Member Functions

void scan ()
 Carry out startup scan of available plugins. More...
 
bool scanSucceeded () const
 Return true if scan() completed successfully. More...
 
QList< CandidategetCandidateLibrariesFor (PluginType) const
 Return the candidate plugin libraries of the given type that were found by helpers during the startup scan. More...
 
QString getStartupFailureReport () const
 

Static Public Member Functions

static PluginScangetInstance ()
 

Private Member Functions

 PluginScan ()
 
 ~PluginScan ()
 
void clear ()
 

Private Attributes

QMutex m_mutex
 
std::map< QString, KnownPluginCandidates * > m_kp
 
bool m_succeeded
 
Loggerm_logger
 

Detailed Description

Definition at line 29 of file PluginScan.h.

Member Enumeration Documentation

Enumerator
VampPlugin 
LADSPAPlugin 
DSSIPlugin 

Definition at line 51 of file PluginScan.h.

Constructor & Destructor Documentation

PluginScan::PluginScan ( )
private

Definition at line 53 of file PluginScan.cpp.

Referenced by getInstance().

PluginScan::~PluginScan ( )
private

Definition at line 56 of file PluginScan.cpp.

References clear(), m_logger, m_mutex, and SVDEBUG.

Member Function Documentation

PluginScan * PluginScan::getInstance ( )
static

Definition at line 43 of file PluginScan.cpp.

References mutex, and PluginScan().

Referenced by LADSPAPluginFactory::discoverPlugins(), and getCandidateLibraries().

void PluginScan::scan ( )
bool PluginScan::scanSucceeded ( ) const

Return true if scan() completed successfully.

If the scan failed, consider using the normal plugin path to load any available plugins (as if they had all been found to be loadable) rather than rejecting all of them – i.e. consider falling back on the behaviour of code from before the scan logic was added.

Definition at line 115 of file PluginScan.cpp.

References m_mutex, and m_succeeded.

QList< PluginScan::Candidate > PluginScan::getCandidateLibrariesFor ( PluginType  ) const

Return the candidate plugin libraries of the given type that were found by helpers during the startup scan.

This could return an empty list for two reasons: the scan succeeded but no libraries were found; or the scan failed. Call scanSucceeded() to distinguish between them.

Definition at line 132 of file PluginScan.cpp.

References DSSIPlugin, LADSPAPlugin, m_kp, m_mutex, SVDEBUG, and VampPlugin.

Referenced by LADSPAPluginFactory::discoverPlugins(), and getCandidateLibraries().

QString PluginScan::getStartupFailureReport ( ) const

Definition at line 280 of file PluginScan.cpp.

References m_kp, m_mutex, and m_succeeded.

void PluginScan::clear ( )
private

Definition at line 122 of file PluginScan.cpp.

References m_kp, and m_succeeded.

Referenced by scan(), and ~PluginScan().

Member Data Documentation

QMutex PluginScan::m_mutex
mutableprivate
std::map<QString, KnownPluginCandidates *> PluginScan::m_kp
private

Definition at line 88 of file PluginScan.h.

Referenced by clear(), getCandidateLibrariesFor(), getStartupFailureReport(), and scan().

bool PluginScan::m_succeeded
private

Definition at line 89 of file PluginScan.h.

Referenced by clear(), getStartupFailureReport(), scan(), and scanSucceeded().

Logger* PluginScan::m_logger
private

Definition at line 91 of file PluginScan.h.

Referenced by scan(), and ~PluginScan().


The documentation for this class was generated from the following files: