<?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>Phonon.Path</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.7 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>Path Class Reference</h1> <code>from PyKDE4.phonon import *</code> <p> Namespace: <a href="../phonon/Phonon.html">Phonon</a><br /> <h2>Detailed Description</h2> <p>\class Path path.h phonon/Path Connection object providing convenient effect insertion </p> <p> <pre class="fragment"> MediaObject *media = new MediaObject; AudioOutput *output = new AudioOutput(Phonon.MusicCategory); Path path = Phonon.createPath(media, output); Q_ASSERT(path.isValid()); // for this simple case the path should always be //valid - there are unit tests to ensure it // insert an effect QList<EffectDescription> effectList = BackendCapabilities.availableAudioEffects(); if (!effectList.isEmpty()) { Effect *effect = path.insertEffect(effectList.first()); } </pre> <dl class="author" compact><dt><b>Author:</b></dt><dd> Matthias Kretz <kretz@kde.org> </dd></dl> <dl class="author" compact><dt><b>Author:</b></dt><dd> Thierry Bastian <thierry.bastian@trolltech.com> </dd></dl> </p> <table border="0" cellpadding="0" cellspacing="0"><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="#Path">__init__</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#Path">__init__</a> (self, <a href="../phonon/Phonon.Path.html">Phonon.Path</a> a0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#disconnect">disconnect</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">[<a href="../phonon/Phonon.Effect.html">Phonon.Effect</a>] </td><td class="memItemRight" valign="bottom"><a class="el" href="#effects">effects</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#insertEffect">insertEffect</a> (self, Phonon::ObjectDescription<Phonon::EffectType> desc, <a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> insertBefore=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#insertEffect">insertEffect</a> (self, <a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> newEffect, <a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> insertBefore=0)</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">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#operator !=">operator !=</a> (self, <a href="../phonon/Phonon.Path.html">Phonon.Path</a> p)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#operator ==">operator ==</a> (self, <a href="../phonon/Phonon.Path.html">Phonon.Path</a> p)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#reconnect">reconnect</a> (self, <a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> source, <a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> sink)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeEffect">removeEffect</a> (self, <a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> effect)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#sink">sink</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#source">source</a> (self)</td></tr> </table> <hr><h2>Method Documentation</h2><a class="anchor" name="Path"></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>Constructs a copy of the given path. </p> <p> This constructor is fast thanks to explicit sharing. </p></div></div><a class="anchor" name="Path"></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="../phonon/Phonon.Path.html">Phonon.Path</a> </td> <td class="paramname"><em>a0</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Constructs a copy of the given path. </p> <p> This constructor is fast thanks to explicit sharing. </p></div></div><a class="anchor" name="disconnect"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool disconnect</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>Disconnects the path from the MediaNodes it was connected to. This invalidates the path (isValid returns <b>false</b> then). </p></div></div><a class="anchor" name="effects"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">[<a href="../phonon/Phonon.Effect.html">Phonon.Effect</a>] effects</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 a list of Effect objects that are currently used as effects. The order in the list determines the order the signal is sent through the effects. </p> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> A list with all current effects. </dd></dl> </p> <p> <dl class="see" compact><dt><b>See also:</b></dt><dd> insertEffect </dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> removeEffect </dd></dl> </p></div></div><a class="anchor" name="insertEffect"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> insertEffect</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">Phonon::ObjectDescription<Phonon::EffectType> </td> <td class="paramname"><em>desc</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> </td> <td class="paramname"><em>insertBefore=0</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Inserts an effect into the path. </p> <p> You may insert effects of the same class as often as you like, but if you insert the same object, the call will fail. </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>newEffect</em> </td><td> An Effect object. </td></tr> </table></dl> <p> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>insertBefore</em> </td><td> If you already inserted an effect you can tell with this parameter in which order the data gets processed. If this is 0 the effect is appended at the end of the processing list. If the effect has not been inserted before the method will do nothing and return false. </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> Returns whether the effect could be inserted at the specified position. If false is returned the effect was not inserted. </dd></dl> </p> <p> <dl class="see" compact><dt><b>See also:</b></dt><dd> removeEffect </dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> effects </dd></dl> </p></div></div><a class="anchor" name="insertEffect"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool insertEffect</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="../phonon/Phonon.Effect.html">Phonon.Effect</a> </td> <td class="paramname"><em>newEffect</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../phonon/Phonon.Effect.html">Phonon.Effect</a> </td> <td class="paramname"><em>insertBefore=0</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Inserts an effect into the path. </p> <p> You may insert effects of the same class as often as you like, but if you insert the same object, the call will fail. </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>newEffect</em> </td><td> An Effect object. </td></tr> </table></dl> <p> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>insertBefore</em> </td><td> If you already inserted an effect you can tell with this parameter in which order the data gets processed. If this is 0 the effect is appended at the end of the processing list. If the effect has not been inserted before the method will do nothing and return false. </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> Returns whether the effect could be inserted at the specified position. If false is returned the effect was not inserted. </dd></dl> </p> <p> <dl class="see" compact><dt><b>See also:</b></dt><dd> removeEffect </dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> effects </dd></dl> </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 whether the path object connects two MediaNodes or not. </p> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> <b>true</b> when the path connects two MediaNodes </dd></dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd> <b>false</b> when the path is disconnected </dd></dl> </p></div></div><a class="anchor" name="operator !="></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool operator !=</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="../phonon/Phonon.Path.html">Phonon.Path</a> </td> <td class="paramname"><em>p</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Returns <b>true</b> if this Path is not equal to <b>p;</b> otherwise returns <b>false;</b> </p></div></div><a class="anchor" name="operator =="></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool operator ==</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="../phonon/Phonon.Path.html">Phonon.Path</a> </td> <td class="paramname"><em>p</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Returns <b>true</b> if this Path is equal to <b>p;</b> otherwise returns <b>false;</b> </p></div></div><a class="anchor" name="reconnect"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool reconnect</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="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> </td> <td class="paramname"><em>source</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> </td> <td class="paramname"><em>sink</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Tries to change the MediaNodes the path is connected to. </p> <p> If reconnect fails the old connection is kept. </p></div></div><a class="anchor" name="removeEffect"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool removeEffect</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="../phonon/Phonon.Effect.html">Phonon.Effect</a> </td> <td class="paramname"><em>effect</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Removes an effect from the path. </p> <p> If the effect gets deleted while it is still connected the effect will be removed automatically. </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>effect</em> </td><td> The effect to be removed. </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> Returns whether the call was successful. If it returns </dd></dl> false the effect could not be found in the path, meaning it has not been inserted before. </p> <p> <dl class="see" compact><dt><b>See also:</b></dt><dd> insertEffect </dd></dl> <dl class="see" compact><dt><b>See also:</b></dt><dd> effects </dd></dl> </p></div></div><a class="anchor" name="sink"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> sink</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 sink MediaNode used by the path. </p></div></div><a class="anchor" name="source"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"><a href="../phonon/Phonon.MediaNode.html">Phonon.MediaNode</a> source</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 source MediaNode used by the path. </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>