<?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>Plasma.DataEngine</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.4 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"> </div> <h1>DataEngine Class Reference</h1> <code>from PyKDE4.plasma import *</code> <p> Inherits: <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a><br /> Namespace: Plasma.DataEngine<br /> <h2>Detailed Description</h2> <p>DataEngine plasma/dataengine.h <Plasma/DataEngine> </p> <p> Data provider for plasmoids (Plasma plugins) </p> <p> This is the base class for DataEngines, which provide access to bodies of data via a common and consistent interface. The common use of a DataEngine is to provide data to a widget for display. This allows a user interface element to show all sorts of data: as long as there is a DataEngine, the data is retrievable. </p> <p> DataEngines are loaded as plugins on demand and provide zero, one or more data sources which are identified by name. For instance, a network DataEngine might provide a data source for each network interface. </p> <table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Signals</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sourceAdded">sourceAdded</a> (, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sourceRemoved">sourceRemoved</a> (, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td colspan="2"><br><h2>Methods</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#DataEngine">__init__</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> parent=0, <a href="../kdecore/KService.Ptr.html">KService.Ptr</a> service=KService.Ptr(0))</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#DataEngine">__init__</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> parent, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariantlist.html">QVariantList</a> args)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#addSource">addSource</a> (self, <a href="../plasma/Plasma.DataContainer.html">Plasma.DataContainer</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#connectAllSources">connectAllSources</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> visualization, long pollingInterval=0, <a href="../plasma/Plasma.html#IntervalAlignment">Plasma.IntervalAlignment</a> intervalAlignment=Plasma.NoAlignment)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#connectSource">connectSource</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> visualization, long pollingInterval=0, <a href="../plasma/Plasma.html#IntervalAlignment">Plasma.IntervalAlignment</a> intervalAlignment=Plasma.NoAlignment)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../plasma/Plasma.DataEngine.SourceDict.html">Plasma.DataEngine.SourceDict</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#containerDict">containerDict</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../plasma/Plasma.DataContainer.html">Plasma.DataContainer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#containerForSource">containerForSource</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#disconnectSource">disconnectSource</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> visualization)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#forceImmediateUpdateOfAllVisualizations">forceImmediateUpdateOfAllVisualizations</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#icon">icon</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#init">init</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#isEmpty">isEmpty</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#isValid">isValid</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">long </td><td class="memItemRight" valign="bottom"><a class="el" href="#maxSourceCount">maxSourceCount</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#minimumPollingInterval">minimumPollingInterval</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#name">name</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../plasma/Plasma.Package.html">Plasma.Package</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#package">package</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#pluginName">pluginName</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../plasma/Plasma.DataEngine.Data.html">Plasma.DataEngine.Data</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#query">query</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeAllData">removeAllData</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeAllSources">removeAllSources</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeData">removeData</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> key)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeSource">removeSource</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#scheduleSourcesUpdated">scheduleSourcesUpdated</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../plasma/Plasma.Service.html">Plasma.Service</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#serviceForSource">serviceForSource</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setData">setData</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariant.html">QVariant</a> value)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setData">setData</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> key, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariant.html">QVariant</a> value)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setData">setData</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source, <a href="../plasma/Plasma.DataEngine.Data.html">Plasma.DataEngine.Data</a> data)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setIcon">setIcon</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> icon)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setMaxSourceCount">setMaxSourceCount</a> (self, long limit)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setMinimumPollingInterval">setMinimumPollingInterval</a> (self, int minimumMs)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setName">setName</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> name)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setPollingInterval">setPollingInterval</a> (self, long frequency)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setValid">setValid</a> (self, bool valid)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sourceAdded">sourceAdded</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sourceRemoved">sourceRemoved</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#sourceRequestEvent">sourceRequestEvent</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstringlist.html">QStringList</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sources">sources</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#timerEvent">timerEvent</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qtimerevent.html">QTimerEvent</a> event)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#updateAllSources">updateAllSources</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#updateSourceEvent">updateSourceEvent</a> (self, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> source)</td></tr> </table> <hr><h2>Method Documentation</h2><a class="anchor" name="DataEngine"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">__init__</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> </td> <td class="paramname"><em>parent=0</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kdecore/KService.Ptr.html">KService.Ptr</a> </td> <td class="paramname"><em>service=KService.Ptr(0)</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Constructor. </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>parent</em> </td><td> The parent object. <tr><td></td><td valign="top"><em>service</em> </td><td> pointer to the service that describes the engine </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="DataEngine"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">__init__</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> </td> <td class="paramname"><em>parent</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariantlist.html">QVariantList</a> </td> <td class="paramname"><em>args</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"></div></div><a class="anchor" name="addSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> addSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../plasma/Plasma.DataContainer.html">Plasma.DataContainer</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Adds an already constructed data source. The DataEngine takes ownership of the DataContainer object. The objectName of the source is used for the source name. </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>source</em> </td><td> the DataContainer to add to the DataEngine </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="connectAllSources"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> connectAllSources</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> </td> <td class="paramname"><em>visualization</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype">long </td> <td class="paramname"><em>pollingInterval=0</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../plasma/Plasma.html#IntervalAlignment">Plasma.IntervalAlignment</a> </td> <td class="paramname"><em>intervalAlignment=Plasma.NoAlignment</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Connects all currently existing sources to an object for data updates. The object must have a slot with the following signature: </p> <p> SLOT(dataUpdated(QString,Plasma.DataEngine.Data)) </p> <p> The data is a QHash of QVariants keyed by QString names, allowing one data source to provide sets of related data. </p> <p> This method may be called multiple times for the same visualization without side-effects. This can be useful to change the pollingInterval. </p> <p> Note that this method does not automatically connect sources that may appear later on. Connecting and responding to the sourceAdded sigal is still required to achieve that. </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>visualization</em> </td><td> the object to connect the data source to <tr><td></td><td valign="top"><em>pollingInterval</em> </td><td> the frequency, in milliseconds, with which to check for updates; a value of 0 (the default) means to update only when there is new data spontaneously generated (e.g. by the engine); any other value results in periodic updates from this source. This value is per-visualization and can be handy for items that require constant updates such as scrolling graphs or clocks. If the data has not changed, no update will be sent. <tr><td></td><td valign="top"><em>intervalAlignment</em> </td><td> the number of ms to align the interval to </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="connectSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> connectSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> </td> <td class="paramname"><em>visualization</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype">long </td> <td class="paramname"><em>pollingInterval=0</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../plasma/Plasma.html#IntervalAlignment">Plasma.IntervalAlignment</a> </td> <td class="paramname"><em>intervalAlignment=Plasma.NoAlignment</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Connects a source to an object for data updates. The object must have a slot with the following signature: </p> <p> dataUpdated(const QString &sourceName, const Plasma.DataEngine.Data &data) </p> <p> The data is a QHash of QVariants keyed by QString names, allowing one data source to provide sets of related data. </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>visualization</em> </td><td> the object to connect the data source to <tr><td></td><td valign="top"><em>pollingInterval</em> </td><td> the frequency, in milliseconds, with which to check for updates; a value of 0 (the default) means to update only when there is new data spontaneously generated (e.g. by the engine); any other value results in periodic updates from this source. This value is per-visualization and can be handy for items that require constant updates such as scrolling graphs or clocks. If the data has not changed, no update will be sent. <tr><td></td><td valign="top"><em>intervalAlignment</em> </td><td> the number of ms to align the interval to </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="containerDict"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../plasma/Plasma.DataEngine.SourceDict.html">Plasma.DataEngine.SourceDict</a> containerDict</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the list of active DataContainers. </dd></dl> </p></div></div><a class="anchor" name="containerForSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../plasma/Plasma.DataContainer.html">Plasma.DataContainer</a> containerForSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Retrevies a pointer to the DataContainer for a given source. This method should not be used if possible. An exception is for script engines that can not provide a QMetaObject as required by connectSource for the initial call to dataUpdated. Using this method, such engines can provide their own connectSource API. </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>source</em> </td><td> the name of the source. </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> pointer to a DataContainer, or zero on failure </dd></dl> </p></div></div><a class="anchor" name="disconnectSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> disconnectSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qobject.html">QObject</a> </td> <td class="paramname"><em>visualization</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Disconnects a source to an object that was receiving data updates. </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>visualization</em> </td><td> the object to connect the data source to </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="forceImmediateUpdateOfAllVisualizations"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> forceImmediateUpdateOfAllVisualizations</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Forces an immediate update to all connected sources, even those with timeouts that haven't yet expired. This should _only_ be used when there was no data available, e.g. due to network non-availability, and then it becomes available. Normal changes in data values due to calls to updateSource or in the natural progression of the monitored object (e.g. CPU heat) should not result in a call to this method! </p> <p> <dl class="since" compact><dt><b>Since:</b></dt><dd> 4.4 </dd></dl> </p></div></div><a class="anchor" name="icon"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> icon</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the name of the icon for this data engine; and empty string is returned if there is no associated icon. </dd></dl> </p></div></div><a class="anchor" name="init"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> init</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>This method is called when the DataEngine is started. When this method is called the DataEngine is fully constructed and ready to be used. This method should be reimplemented by DataEngine subclasses which have the need to perform a startup routine. </p></div></div><a class="anchor" name="isEmpty"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool isEmpty</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns true if the data engine is empty, which is to say that it has no data sources currently. </p></div></div><a class="anchor" name="isValid"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool isValid</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns true if this engine is valid, otherwise returns false </p></div></div><a class="anchor" name="maxSourceCount"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">long maxSourceCount</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the maximum number of sources this DataEngine will have at any given time. </p> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the maximum number of sources; zero means no limit. </dd></dl> </p></div></div><a class="anchor" name="minimumPollingInterval"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">int minimumPollingInterval</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the minimum time between updates. <dl class="see" compact><dt><b>See also:</b></dt><dd> setMinimumPollingInterval </dd></dl> </p></div></div><a class="anchor" name="name"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> name</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the engine name for the DataEngine </p></div></div><a class="anchor" name="package"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../plasma/Plasma.Package.html">Plasma.Package</a> package</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Accessor for the associated Package object if any. </p> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the Package object, or 0 if none </dd></dl> </p></div></div><a class="anchor" name="pluginName"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> pluginName</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the plugin name for the applet </p></div></div><a class="anchor" name="query"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../plasma/Plasma.DataEngine.Data.html">Plasma.DataEngine.Data</a> query</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Gets the Data associated with a data source. </p> <p> The data is a QHash of QVariants keyed by QString names, allowing one data source to provide sets of related data. </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>source</em> </td><td> the data source to retrieve the data for </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the Data associated with the source; if the source doesn't exist an empty data set is returned </dd></dl> </p></div></div><a class="anchor" name="removeAllData"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> removeAllData</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Removes all the data associated with a data source. </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>source</em> </td><td> the name of the data source </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="removeAllSources"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> removeAllSources</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Removes all data sources </p></div></div><a class="anchor" name="removeData"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> removeData</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>key</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Removes a data entry from a source </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>key</em> </td><td> the data entry to remove </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="removeSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> removeSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Removes a data source. </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>source</em> </td><td> the name of the data source to remove </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="scheduleSourcesUpdated"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> scheduleSourcesUpdated</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Call this method when you call setData directly on a DataContainer instead of using the DataEngine.setData methods. If this method is not called, no dataUpdated(..) signals will be emitted! </p></div></div><a class="anchor" name="serviceForSource"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../plasma/Plasma.Service.html">Plasma.Service</a> serviceForSource</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p></p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>source</em> </td><td> the source to target the Service at </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> a Service that has the source as a destination. The service is parented to the DataEngine, but may be deleted by the caller when finished with it </dd></dl> </p></div></div><a class="anchor" name="setData"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setData</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariant.html">QVariant</a> </td> <td class="paramname"><em>value</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Adds a set of data to a data source. If the source doesn't exist then it is created. </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>data</em> </td><td> the data to add to the source </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setData"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setData</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>key</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qvariant.html">QVariant</a> </td> <td class="paramname"><em>value</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Adds a set of data to a data source. If the source doesn't exist then it is created. </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>data</em> </td><td> the data to add to the source </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setData"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setData</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../plasma/Plasma.DataEngine.Data.html">Plasma.DataEngine.Data</a> </td> <td class="paramname"><em>data</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Adds a set of data to a data source. If the source doesn't exist then it is created. </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>source</em> </td><td> the name of the data source <tr><td></td><td valign="top"><em>data</em> </td><td> the data to add to the source </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setIcon"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setIcon</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>icon</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets the icon for this data engine </p></div></div><a class="anchor" name="setMaxSourceCount"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setMaxSourceCount</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">long </td> <td class="paramname"><em>limit</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets an upper limit on the number of data sources to keep in this engine. If the limit is exceeded, then the oldest data source, as defined by last update, is dropped. </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>limit</em> </td><td> the maximum number of sources to keep active </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setMinimumPollingInterval"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setMinimumPollingInterval</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>minimumMs</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets the minimum amount of time, in milliseconds, that must pass between successive updates of data. This can help prevent too many updates happening due to multiple update requests coming in, which can be useful for expensive (time- or resource-wise) update mechanisms. </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>minimumMs</em> </td><td> the minimum time lapse, in milliseconds, between updates. A value less than 0 means to never perform automatic updates, a value of 0 means update immediately on every update request, a value >0 will result in a minimum time lapse being enforced. </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setName"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setName</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>name</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets the engine name for the DataEngine </p></div></div><a class="anchor" name="setPollingInterval"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setPollingInterval</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">long </td> <td class="paramname"><em>frequency</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets up an internal update tick for all data sources. On every update, updateSourceEvent will be called for each applicable source. <dl class="see" compact><dt><b>See also:</b></dt><dd> updateSourceEvent </dd></dl> </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>frequency</em> </td><td> the time, in milliseconds, between updates. A value of 0 will stop internally triggered updates. </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="setValid"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setValid</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>valid</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Sets whether or not this engine is valid, e.g. can be used. In practice, only the internal fall-back engine, the NullEngine should have need for this. </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>valid</em> </td><td> whether or not the engine is valid </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="sourceAdded"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> sourceAdded</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Emitted when a new data source is created </p> <p> Note that you do not need to emit this yourself unless you are reimplementing sources() and want to advertise that a new source is available (but hasn't been created yet). </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>source</em> </td><td> the name of the new data source </td></tr> </table></dl> <p> </p><dl compact><dt><b>Signal syntax:</b></dt><dd><code>QObject.connect(source, SIGNAL("sourceAdded(const QString&)"), target_slot)</code></dd></dl></div></div><a class="anchor" name="sourceRemoved"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> sourceRemoved</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Emitted when a data source is removed. </p> <p> Note that you do not need to emit this yourself unless you have reimplemented sources() and want to signal that a source that was available but was never created is no longer available. </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>source</em> </td><td> the name of the data source that was removed </td></tr> </table></dl> <p> </p><dl compact><dt><b>Signal syntax:</b></dt><dd><code>QObject.connect(source, SIGNAL("sourceRemoved(const QString&)"), target_slot)</code></dd></dl></div></div><a class="anchor" name="sourceRequestEvent"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool sourceRequestEvent</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>When a source that does not currently exist is requested by the consumer, this method is called to give the DataEngine the opportunity to create one. </p> <p> The name of the data source (e.g. the source parameter passed into setData) must be the same as the name passed to sourceRequestEvent otherwise the requesting visualization may not receive notice of a data update. </p> <p> If the source can not be populated with data immediately (e.g. due to an asynchronous data acquisition method such as an HTTP request) the source must still be created, even if it is empty. This can be accomplished in these cases with the follow line: </p> <p> setData(name, DataEngine.Data()); </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>source</em> </td><td> the name of the source that has been requested </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> true if a DataContainer was set up, false otherwise </dd></dl> </p></div></div><a class="anchor" name="sources"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstringlist.html">QStringList</a> sources</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> a list of all the data sources available via this DataEngine Whether these sources are currently available (which is what the default implementation provides) or not is up to the DataEngine to decide. </dd></dl> </p></div></div><a class="anchor" name="timerEvent"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> timerEvent</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qtimerevent.html">QTimerEvent</a> </td> <td class="paramname"><em>event</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Reimplemented from QObject </p></div></div><a class="anchor" name="updateAllSources"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> updateAllSources</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Immediately updates all existing sources when called </p></div></div><a class="anchor" name="updateSourceEvent"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool updateSourceEvent</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qstring.html">QString</a> </td> <td class="paramname"><em>source</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Called by internal updating mechanisms to trigger the engine to refresh the data contained in a given source. Reimplement this method when using facilities such as setPollingInterval. <dl class="see" compact><dt><b>See also:</b></dt><dd> setPollingInterval </dd></dl> </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>source</em> </td><td> the name of the source that should be updated </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> true if the data was changed, or false if there was no change or if the change will occur later </dd></dl> </p></div></div> </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="mailto:simon@simonzone.com">Simon Edwards</a>.<br /> KDE<sup>®</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>®</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>