summaryrefslogtreecommitdiff
path: root/doc/html/classcUPnPObjectFactory.html
diff options
context:
space:
mode:
authorDenis Loh <denis.loh@gmail.com>2010-01-25 12:10:01 +0100
committerDenis Loh <denis.loh@gmail.com>2010-01-25 12:10:01 +0100
commit724cb5e3783311f6b8c808852dbe2de59f2399b0 (patch)
treebe1f2d617b4a3e2e156b7a2d6ba9ee335cde63cf /doc/html/classcUPnPObjectFactory.html
parent0152f33daffe3fe943d6a134409d02df7ecaa982 (diff)
downloadvdr-plugin-upnp-724cb5e3783311f6b8c808852dbe2de59f2399b0.tar.gz
vdr-plugin-upnp-724cb5e3783311f6b8c808852dbe2de59f2399b0.tar.bz2
Fixed small bug which leads to an empty TV folder
Diffstat (limited to 'doc/html/classcUPnPObjectFactory.html')
-rw-r--r--doc/html/classcUPnPObjectFactory.html332
1 files changed, 332 insertions, 0 deletions
diff --git a/doc/html/classcUPnPObjectFactory.html b/doc/html/classcUPnPObjectFactory.html
new file mode 100644
index 0000000..1150753
--- /dev/null
+++ b/doc/html/classcUPnPObjectFactory.html
@@ -0,0 +1,332 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+<title>UPnP/DLNA plugin for VDR: cUPnPObjectFactory Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css">
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="navigation" id="top">
+ <div class="tabs">
+ <ul>
+ <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div class="tabs">
+ <ul>
+ <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
+ </ul>
+ </div>
+</div>
+<div class="contents">
+<h1>cUPnPObjectFactory Class Reference</h1><!-- doxytag: class="cUPnPObjectFactory" --><code>#include &lt;<a class="el" href="object_8h-source.html">object.h</a>&gt;</code>
+<p>
+<div class="dynheader">
+Collaboration diagram for cUPnPObjectFactory:</div>
+<div class="dynsection">
+<p><center><img src="classcUPnPObjectFactory__coll__graph.png" border="0" usemap="#cUPnPObjectFactory__coll__map" alt="Collaboration graph"></center>
+<map name="cUPnPObjectFactory__coll__map">
+<area shape="rect" href="classcSQLiteDatabase.html" title="{cSQLiteDatabase\n|&#45; mAutoCommit\l&#45; mActiveTransaction\l&#45; mLastRow\l&#45; mRows\l&#45; mDatabase\l&#45; mInstance\l|+ ~cSQLiteDatabase()\l+ getResultCount()\l+ getLastInsertRowID()\l+ getResultRows()\l+ execStatement()\l+ startTransaction()\l+ commitTransaction()\l+ rollbackTransaction()\l+ setAutoCommit()\l+ sprintf()\l+ getInstance()\l&#45; cSQLiteDatabase()\l&#45; initialize()\l&#45; initializeTables()\l&#45; initializeTriggers()\l&#45; exec()\l&#45; getResultRow()\l}" alt="" coords="8,437,163,853"><area shape="rect" href="classcRows.html" title="{cRows\n|&#45; mLastRow\l|+ ~cRows()\l+ fetchRow()\l&#45; cRows()\l}" alt="" coords="127,261,223,373"><area shape="rect" href="classcRow.html" title="{cRow\n|&#45; currentCol\l&#45; ColCount\l&#45; Columns\l&#45; Values\l|+ ~cRow()\l+ Count()\l+ fetchColumn()\l+ fetchColumn()\l&#45; cRow()\l}" alt="" coords="28,5,143,197"></map>
+<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
+
+<p>
+<a href="classcUPnPObjectFactory-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#f2b20dffcd46c08d5b2de4b6807e0689">registerMediator</a> (const char *UPnPClass, <a class="el" href="classcMediatorInterface.html">cMediatorInterface</a> *Mediator)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#ae48ef32453881a77857bf9772d79d22">unregisterMediator</a> (const char *UPnPClass, bool freeMediator=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#c71bbdb30be6b0fd17f67b8850aeccdb">createObject</a> (const char *UPnPClass, const char *Title, bool Restricted=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#a26f57549c26c6fc15425158e7fda4b6">getObject</a> (<a class="el" href="structcUPnPObjectID.html">cUPnPObjectID</a> ID)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#1b521c8cfa3507bec49274b606d5d2c5">saveObject</a> (<a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *Object)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#10198e67d9da1f964aa895cd463b2f92">deleteObject</a> (<a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *Object)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#947c7256906b4dbe63d156723cdc38be">clearObject</a> (<a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *Object)</td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classcUPnPObjectFactory.html">cUPnPObjectFactory</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcUPnPObjectFactory.html#5b99e366dad18ab44ee1d2da5f1c3b4d">getInstance</a> ()</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+The object factory<p>
+This factory can create, delete, clear or save UPnP objects. It uses mediators to communicate with the persistance database to load or persist the objects.<p>
+If a new type of object shall be stored in the database an according mediator is needed, which knows the internal database structure. It must implement the <a class="el" href="classcMediatorInterface.html">cMediatorInterface</a> class to work with this factory. <hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="947c7256906b4dbe63d156723cdc38be"></a><!-- doxytag: member="cUPnPObjectFactory::clearObject" ref="947c7256906b4dbe63d156723cdc38be" args="(cUPnPClassObject *Object)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int cUPnPObjectFactory::clearObject </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *&nbsp;</td>
+ <td class="paramname"> <em>Object</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Clears the object<p>
+This clears the object, i.e. all its children will be removed and deleted from the database<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>returns<ul>
+<li><b><code>&lt;0</code>,</b> in case of an error</li><li><b><code>0</code>,</b> otherwise </li></ul>
+</dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>Object</em>&nbsp;</td><td>the object to be cleared </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="c71bbdb30be6b0fd17f67b8850aeccdb"></a><!-- doxytag: member="cUPnPObjectFactory::createObject" ref="c71bbdb30be6b0fd17f67b8850aeccdb" args="(const char *UPnPClass, const char *Title, bool Restricted=true)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> * cUPnPObjectFactory::createObject </td>
+ <td>(</td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>UPnPClass</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>Title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>Restricted</em> = <code>true</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates an object<p>
+This creates a new UPnP object with the specific title and the restriction.<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>the newly created object </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>Title</em>&nbsp;</td><td>the title of that object </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>Restricted</em>&nbsp;</td><td>the restriction of the object </td></tr>
+ </table>
+</dl>
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>UPnPClass</em>&nbsp;</td><td>the class of the new object </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="10198e67d9da1f964aa895cd463b2f92"></a><!-- doxytag: member="cUPnPObjectFactory::deleteObject" ref="10198e67d9da1f964aa895cd463b2f92" args="(cUPnPClassObject *Object)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int cUPnPObjectFactory::deleteObject </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *&nbsp;</td>
+ <td class="paramname"> <em>Object</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Deletes the object<p>
+This deletes the object in the database by removing all its children and then deleting the contents from the database<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>returns<ul>
+<li><b><code>&lt;0</code>,</b> in case of an error</li><li><b><code>0</code>,</b> otherwise </li></ul>
+</dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>Object</em>&nbsp;</td><td>the object to be deleted </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="5b99e366dad18ab44ee1d2da5f1c3b4d"></a><!-- doxytag: member="cUPnPObjectFactory::getInstance" ref="5b99e366dad18ab44ee1d2da5f1c3b4d" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classcUPnPObjectFactory.html">cUPnPObjectFactory</a> * cUPnPObjectFactory::getInstance </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Return the instance of the factory<p>
+This returns the instance of the factory. When the media database is initialized successfully, it usally has all known mediators already registered.<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>the instance of the factory </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="a26f57549c26c6fc15425158e7fda4b6"></a><!-- doxytag: member="cUPnPObjectFactory::getObject" ref="a26f57549c26c6fc15425158e7fda4b6" args="(cUPnPObjectID ID)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> * cUPnPObjectFactory::getObject </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structcUPnPObjectID.html">cUPnPObjectID</a>&nbsp;</td>
+ <td class="paramname"> <em>ID</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get an object<p>
+Retrieves a UPnP object from the database and stores its information in the object. The object is obtained via its object ID.<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>the object, found in the database </dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>ID</em>&nbsp;</td><td>the object ID </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="f2b20dffcd46c08d5b2de4b6807e0689"></a><!-- doxytag: member="cUPnPObjectFactory::registerMediator" ref="f2b20dffcd46c08d5b2de4b6807e0689" args="(const char *UPnPClass, cMediatorInterface *Mediator)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void cUPnPObjectFactory::registerMediator </td>
+ <td>(</td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>UPnPClass</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classcMediatorInterface.html">cMediatorInterface</a> *&nbsp;</td>
+ <td class="paramname"> <em>Mediator</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Register a mediator<p>
+This registers a new mediator by the associated class. The mediator must implement the <a class="el" href="classcMediatorInterface.html">cMediatorInterface</a> class to be used with this factory.<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>UPnPClass</em>&nbsp;</td><td>the class of which the mediator is associated to </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>Mediator</em>&nbsp;</td><td>the mediator itself </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="1b521c8cfa3507bec49274b606d5d2c5"></a><!-- doxytag: member="cUPnPObjectFactory::saveObject" ref="1b521c8cfa3507bec49274b606d5d2c5" args="(cUPnPClassObject *Object)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int cUPnPObjectFactory::saveObject </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classcUPnPClassObject.html">cUPnPClassObject</a> *&nbsp;</td>
+ <td class="paramname"> <em>Object</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Saves the object<p>
+This saves the object in the database by updating the values in the database with those in the object.<p>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>returns<ul>
+<li><b><code>&lt;0</code>,</b> in case of an error</li><li><b><code>0</code>,</b> otherwise </li></ul>
+</dd></dl>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>Object</em>&nbsp;</td><td>the object to be saved </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<a class="anchor" name="ae48ef32453881a77857bf9772d79d22"></a><!-- doxytag: member="cUPnPObjectFactory::unregisterMediator" ref="ae48ef32453881a77857bf9772d79d22" args="(const char *UPnPClass, bool freeMediator=true)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void cUPnPObjectFactory::unregisterMediator </td>
+ <td>(</td>
+ <td class="paramtype">const char *&nbsp;</td>
+ <td class="paramname"> <em>UPnPClass</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool&nbsp;</td>
+ <td class="paramname"> <em>freeMediator</em> = <code>true</code></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Unregisters a mediator<p>
+This unregisters a mediator if it is not needed anylonger. If the optional parameter <code>freeMediator</code> is set, the object instance will be free'd after removing it from the list.<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign="top"></td><td valign="top"><em>UPnPClass</em>&nbsp;</td><td>the class of the associated mediator </td></tr>
+ <tr><td valign="top"></td><td valign="top"><em>freeMediator</em>&nbsp;</td><td>flag to indicate if the mediator shall be free'd after removing </td></tr>
+ </table>
+</dl>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li>database/<a class="el" href="object_8h-source.html">object.h</a><li>database/object.cpp</ul>
+</div>
+<hr size="1"><address style="text-align: right;"><small>Generated on Sun Nov 8 15:44:09 2009 for UPnP/DLNA plugin for VDR by&nbsp;
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
+</body>
+</html>