Sophie

Sophie

distrib > Mageia > 4 > i586 > by-pkgid > 41640b7d04ef5b5040e7668305a5ba3d > files > 311

python-kde4-doc-4.11.4-1.mga4.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

<head>
  <title>KLibLoader</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <link rel="stylesheet" type="text/css" href="../common/doxygen.css" />
  <link rel="stylesheet" media="screen" type="text/css" title="KDE Colors" href="../common/kde.css" />
</head>
<body>
<div id="container">
<div id="header">
  <div id="header_top">
    <div>
      <div>
        <img alt ="" src="../common/top-kde.jpg"/>
        KDE 4.9 PyKDE API Reference
      </div>
    </div>
  </div>
  <div id="header_bottom">
    <div id="location">
      <ul>
        <li>KDE's Python API</li>
      </ul>
    </div>

    <div id="menu">
      <ul>
        <li><a href="../modules.html">Overview</a></li>
<li><a href="http://techbase.kde.org/Development/Languages/Python">PyKDE Home</a></li>
<li><a href="http://kde.org/family/">Sitemap</a></li>
<li><a href="http://kde.org/contact/">Contact Us</a></li>
</ul>
    </div>
  </div>
</div>

<div id="body_wrapper">
<div id="body">
<div id="right">
<div class="content">
<div id="main">
<div class="clearer">&nbsp;</div>

<h1>KLibLoader Class Reference</h1>
<code>from PyKDE4.kdecore import *</code>
<p>
Inherits: QObject<br />


<h2>Detailed Description</h2>

<p>\class KLibLoader klibloader.h &lt;KLibLoader&gt;
</p>
<p>
The KLibLoader allows you to load libraries dynamically at runtime.
Dependent libraries are loaded automatically.
</p>
<p>
KLibLoader follows the singleton pattern. You can not create multiple
instances. Use self() to get a pointer to the loader.
</p>
<p>
<dl class="deprecated" compact><dt><b>Deprecated:</b></dt><dd> You have two other possibilites:
- KPluginLoader or KService.createInstance for plugins
- KLibrary for other libraries
</dd></dl> </p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd> KLibrary
</dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> KPluginLoader
</dd></dl> 
<dl class="author" compact><dt><b>Author:</b></dt><dd> Torben Weis &lt;weis@kde.org&gt; </dd></dl>
</p>
<table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="#ComponentLoadingError">ComponentLoadingError</a>&nbsp;</td><td class="memItemRight" valign="bottom">{&nbsp;ErrNoLibrary, ErrNoFactory, ErrNoComponent, ErrServiceProvidesNoLibrary, ErrNoServiceFound&nbsp;}</td></tr>
<tr><td colspan="2"><br><h2>Methods</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#KLibLoader">__init__</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../kdecore/KPluginFactory.html">KPluginFactory</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#factory">factory</a> (self, QString libname, QLibrary::LoadHints loadHint=0)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#lastErrorMessage">lastErrorMessage</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../kdecore/KLibrary.html">KLibrary</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#library">library</a> (self, QString libname, QLibrary::LoadHints loadHint=0)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#unloadLibrary">unloadLibrary</a> (self, QString libname)</td></tr>
<tr><td colspan="2"><br><h2>Static Methods</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#errorString">errorString</a> (int componentLoadingError)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">QString&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#findLibrary">findLibrary</a> (QString libname, <a href="../kdecore/KComponentData.html">KComponentData</a> cData=KGlobal.mainComponent())</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../kdecore/KLibLoader.html">KLibLoader</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#self">self</a> ()</td></tr>
</table>
<hr><h2>Method Documentation</h2><a class="anchor" name="KLibLoader"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">__init__</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"></div></div><a class="anchor" name="factory"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"><a href="../kdecore/KPluginFactory.html">KPluginFactory</a> factory</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QString&nbsp;</td>
<td class="paramname"><em>libname</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QLibrary::LoadHints&nbsp;</td>
<td class="paramname"><em>loadHint=0</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Loads and initializes a library. Loading a library multiple times is
handled gracefully.
</p>
<p>
This is a convenience function that returns the factory immediately
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>libname</em>&nbsp;</td><td> This is the library name without extension. Usually that is something like
"libkspread". The function will then search for a file named
"libkspread.la" in the KDE library paths.
The *.la files are created by libtool and contain
important information especially about the libraries dependencies
on other shared libs. Loading a "libfoo.so" could not solve the
dependencies problem.
</td></tr>
</table></dl>
<p> You can, however, give a library name ending in ".so"
(or whatever is used on your platform), and the library
will be loaded without resolving dependencies. Use with caution.
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>loadHint</em>&nbsp;</td><td> provides more control over how the library is loaded
</td></tr> </table></dl>
<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the KPluginFactory, or 0 if the library does not exist or it does
not have a factory
</dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> library
</dd></dl>
</p></div></div><a class="anchor" name="lastErrorMessage"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">QString lastErrorMessage</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><p>Returns an error message that can be useful to debug the problem.
Returns QString() if the last call to library() was successful.
You can call this function more than once. The error message is only
reset by a new call to library().
<dl class="return" compact><dt><b>Returns:</b></dt><dd> the last error message, or QString() if there was no error
</dd></dl>
</p></div></div><a class="anchor" name="library"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"><a href="../kdecore/KLibrary.html">KLibrary</a> library</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QString&nbsp;</td>
<td class="paramname"><em>libname</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QLibrary::LoadHints&nbsp;</td>
<td class="paramname"><em>loadHint=0</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Loads and initializes a library. Loading a library multiple times is
handled gracefully.
</p>
<p>
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>libname</em>&nbsp;</td><td> This is the library name without extension. Usually that is something like
"libkspread". The function will then search for a file named
"libkspread.la" in the KDE library paths.
The *.la files are created by libtool and contain
important information especially about the libraries dependencies
on other shared libs. Loading a "libfoo.so" could not solve the
dependencies problem.
</td></tr>
</table></dl>
<p> You can, however, give a library name ending in ".so"
(or whatever is used on your platform), and the library
will be loaded without resolving dependencies. Use with caution.
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>loadHint</em>&nbsp;</td><td> provides more control over how the library is loaded
</td></tr> </table></dl>
<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> KLibrary is invalid (0) when the library couldn't be dlopened. in such
a case you can retrieve the error message by calling KLibLoader.lastErrorMessage()
</dd></dl> </p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd> factory
</dd></dl>
</p></div></div><a class="anchor" name="unloadLibrary"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> unloadLibrary</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QString&nbsp;</td>
<td class="paramname"><em>libname</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Unloads the library with the given name.
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>libname</em>&nbsp;</td><td> This is the library name without extension. Usually that is something like
"libkspread". The function will then search for a file named
"libkspread.la" in the KDE library paths.
The *.la files are created by libtool and contain
important information especially about the libraries dependencies
on other shared libs. Loading a "libfoo.so" could not solve the
dependencies problem.
</td></tr>
</table></dl>
<p> You can, however, give a library name ending in ".so"
(or whatever is used on your platform), and the library
will be loaded without resolving dependencies. Use with caution.
</p></div></div><hr><h2>Static Method Documentation</h2><a class="anchor" name="errorString"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">QString errorString</td>
<td>(</td>
<td class="paramtype">int&nbsp;</td>
<td class="paramname"><em>componentLoadingError</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Converts a numerical error code into a human-readable error message
</p>
<p>
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>componentLoadingError</em>&nbsp;</td><td> the error code, as set using the <b>error</b>
parameter of createInstance()
</td></tr> </table></dl>
<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the translated error message describing the error represented
by <b>componentLoadingError</b>
</dd></dl> </p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd> ComponentLoadingError
</dd></dl>
</p></div></div><a class="anchor" name="findLibrary"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">QString findLibrary</td>
<td>(</td>
<td class="paramtype">QString&nbsp;</td>
<td class="paramname"><em>libname</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="../kdecore/KComponentData.html">KComponentData</a>&nbsp;</td>
<td class="paramname"><em>cData=KGlobal.mainComponent()</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Helper method which looks for a library in the standard paths
("module" and "lib" resources).
Made public for code that doesn't use KLibLoader itself, but still
wants to open modules.
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>libname</em>&nbsp;</td><td> of the library. If it is not a path, the function searches in
the "module" and "lib" resources. If there is no extension,
".la" will be appended.

<tr><td></td><td valign="top"><em>cData</em>&nbsp;</td><td> a KComponentData used to get the standard paths
</td></tr> </table></dl>
<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the name of the library if it was found, an empty string otherwise
</dd></dl>
</p></div></div><a class="anchor" name="self"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"><a href="../kdecore/KLibLoader.html">KLibLoader</a> self</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname">)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><p>Returns a pointer to the factory.
</p>
<p>
Use this function to get an instance of KLibLoader.
</p>
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd> a pointer to the loader. If no loader exists until now
then one is created.
</dd></dl> </p>
<p>
<dl class="deprecated" compact><dt><b>Deprecated:</b></dt><dd> use KPluginLoader instead
</dd></dl>
</p></div></div><hr><h2>Enumeration Documentation</h2><a class="anchor" name="ComponentLoadingError"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr><td class="memname">ComponentLoadingError</td>
</tr>
</table>
</div>
<div class="memdoc"><p>This enum type defines the possible error cases that can happen
when loading a component.
</p>
<p>
Use errorString() to convert the error code to a human-readable string
</p><dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0"><tr><td valign="top"><em>ErrNoLibrary</em>&nbsp;=&nbsp;1</td><td><tr><td valign="top"><em>ErrNoFactory</em>&nbsp;</td><td><tr><td valign="top"><em>ErrNoComponent</em>&nbsp;</td><td><tr><td valign="top"><em>ErrServiceProvidesNoLibrary</em>&nbsp;</td><td><tr><td valign="top"><em>ErrNoServiceFound</em>&nbsp;</td><td></table>
</dl>
</div></div><p>
</div>
</div>
</div>

<div id="left">

<div class="menu_box">
<div class="nav_list">
<ul>
<li><a href="../allclasses.html">Full Index</a></li>
</ul>
</div>

<a name="cp-menu" /><div class="menutitle"><div>
  <h2 id="cp-menu-project">Modules</h2>
</div></div>
<div class="nav_list">
<ul><li><a href="../akonadi/index.html">akonadi</a></li>
<li><a href="../dnssd/index.html">dnssd</a></li>
<li><a href="../kdecore/index.html">kdecore</a></li>
<li><a href="../kdeui/index.html">kdeui</a></li>
<li><a href="../khtml/index.html">khtml</a></li>
<li><a href="../kio/index.html">kio</a></li>
<li><a href="../knewstuff/index.html">knewstuff</a></li>
<li><a href="../kparts/index.html">kparts</a></li>
<li><a href="../kutils/index.html">kutils</a></li>
<li><a href="../nepomuk/index.html">nepomuk</a></li>
<li><a href="../phonon/index.html">phonon</a></li>
<li><a href="../plasma/index.html">plasma</a></li>
<li><a href="../polkitqt/index.html">polkitqt</a></li>
<li><a href="../solid/index.html">solid</a></li>
<li><a href="../soprano/index.html">soprano</a></li>
</ul></div></div>

</div>

</div>
  <div class="clearer"/>
</div>

<div id="end_body"></div>
</div>
<div id="footer"><div id="footer_text">
This documentation is maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;simon&#64;simonzone&#46;com">Simon Edwards</a>.<br />
        KDE<sup>&#174;</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>&#174;</sup> logo</a> are registered trademarks of <a href="http://ev.kde.org/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
        <a href="http://www.kde.org/contact/impressum.php">Legal</a>
    </div></div>
</body>
</html>