19#include "QtCore/qlibrary.h"
21#include "QtCore/private/qfactoryloader_p.h"
22#include "QtCore/qloggingcategory.h"
23#include "QtCore/qmutex.h"
24#include "QtCore/qplugin.h"
25#include "QtCore/qpointer.h"
26#include "QtCore/qstringlist.h"
28# include "QtCore/qt_windows.h"
43#if defined(Q_OF_MACH_O)
63 using UniquePtr = std::unique_ptr<QLibraryPrivate, Deleter>;
72 QFunctionPointer
resolve(
const char *);
75 {
return QLibrary::LoadHints(loadHintsInt.
loadRelaxed()); }
84 QAtomicPointer<std::remove_pointer<QtPluginInstanceFunction>::type>
instanceFactory;
85 QAtomicPointer<std::remove_pointer<Handle>::type>
pHnd;
100 void mergeLoadHints(QLibrary::LoadHints
loadHints);
104 QFunctionPointer resolve_sys(
const char *);
113 enum { IsAPlugin, IsNotAPlugin, MightBeAPlugin } pluginState;
T loadRelaxed() const noexcept
bool unload(UnloadFlag flag=UnloadSys)
QString qualifiedFileName
QtPluginInstanceFunction loadPlugin()
QAtomicPointer< std::remove_pointer< Handle >::type > pHnd
static QStringList suffixes_sys(const QString &fullVersion)
void setLoadHints(QLibrary::LoadHints lh)
const QString fullVersion
QAtomicPointer< std::remove_pointer< QtPluginInstanceFunction >::type > instanceFactory
static QStringList prefixes_sys()
QPluginParsedMetaData metaData
QFunctionPointer resolve(const char *)
std::unique_ptr< QLibraryPrivate, Deleter > UniquePtr
QObject * pluginInstance()
static QLibraryPrivate * findOrCreate(const QString &fileName, const QString &version=QString(), QLibrary::LoadHints loadHints={ })
QLibrary::LoadHints loadHints() const
\macro QT_RESTRICTED_CAST_FROM_ASCII
Combined button and popup list for selecting options.
#define Q_DECLARE_LOGGING_CATEGORY(name)
static bool isEncrypted(const my_mach_header *header)
QObject *(* QtPluginInstanceFunction)()
#define QT_REQUIRE_CONFIG(feature)
void operator()(QLibraryPrivate *p) const