summaryrefslogtreecommitdiff
path: root/doc/latex/classcUPnPObjectFactory.tex
diff options
context:
space:
mode:
Diffstat (limited to 'doc/latex/classcUPnPObjectFactory.tex')
-rw-r--r--doc/latex/classcUPnPObjectFactory.tex199
1 files changed, 199 insertions, 0 deletions
diff --git a/doc/latex/classcUPnPObjectFactory.tex b/doc/latex/classcUPnPObjectFactory.tex
new file mode 100644
index 0000000..7356b44
--- /dev/null
+++ b/doc/latex/classcUPnPObjectFactory.tex
@@ -0,0 +1,199 @@
+\hypertarget{classcUPnPObjectFactory}{
+\section{cUPnPObjectFactory Class Reference}
+\label{classcUPnPObjectFactory}\index{cUPnPObjectFactory@{cUPnPObjectFactory}}
+}
+{\tt \#include $<$object.h$>$}
+
+Collaboration diagram for cUPnPObjectFactory:\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[height=400pt]{classcUPnPObjectFactory__coll__graph}
+\end{center}
+\end{figure}
+\subsection*{Public Member Functions}
+\begin{CompactItemize}
+\item
+void \hyperlink{classcUPnPObjectFactory_f2b20dffcd46c08d5b2de4b6807e0689}{registerMediator} (const char $\ast$UPnPClass, \hyperlink{classcMediatorInterface}{cMediatorInterface} $\ast$Mediator)
+\item
+void \hyperlink{classcUPnPObjectFactory_ae48ef32453881a77857bf9772d79d22}{unregisterMediator} (const char $\ast$UPnPClass, bool freeMediator=true)
+\item
+\hyperlink{classcUPnPClassObject}{cUPnPClassObject} $\ast$ \hyperlink{classcUPnPObjectFactory_c71bbdb30be6b0fd17f67b8850aeccdb}{createObject} (const char $\ast$UPnPClass, const char $\ast$Title, bool Restricted=true)
+\item
+\hyperlink{classcUPnPClassObject}{cUPnPClassObject} $\ast$ \hyperlink{classcUPnPObjectFactory_a26f57549c26c6fc15425158e7fda4b6}{getObject} (\hyperlink{structcUPnPObjectID}{cUPnPObjectID} ID)
+\item
+int \hyperlink{classcUPnPObjectFactory_1b521c8cfa3507bec49274b606d5d2c5}{saveObject} (\hyperlink{classcUPnPClassObject}{cUPnPClassObject} $\ast$Object)
+\item
+int \hyperlink{classcUPnPObjectFactory_10198e67d9da1f964aa895cd463b2f92}{deleteObject} (\hyperlink{classcUPnPClassObject}{cUPnPClassObject} $\ast$Object)
+\item
+int \hyperlink{classcUPnPObjectFactory_947c7256906b4dbe63d156723cdc38be}{clearObject} (\hyperlink{classcUPnPClassObject}{cUPnPClassObject} $\ast$Object)
+\end{CompactItemize}
+\subsection*{Static Public Member Functions}
+\begin{CompactItemize}
+\item
+static \hyperlink{classcUPnPObjectFactory}{cUPnPObjectFactory} $\ast$ \hyperlink{classcUPnPObjectFactory_5b99e366dad18ab44ee1d2da5f1c3b4d}{getInstance} ()
+\end{CompactItemize}
+
+
+\subsection{Detailed Description}
+The object factory
+
+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.
+
+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 \hyperlink{classcMediatorInterface}{cMediatorInterface} class to work with this factory.
+
+\subsection{Member Function Documentation}
+\hypertarget{classcUPnPObjectFactory_947c7256906b4dbe63d156723cdc38be}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!clearObject@{clearObject}}
+\index{clearObject@{clearObject}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{clearObject}]{\setlength{\rightskip}{0pt plus 5cm}int cUPnPObjectFactory::clearObject ({\bf cUPnPClassObject} $\ast$ {\em Object})}}
+\label{classcUPnPObjectFactory_947c7256906b4dbe63d156723cdc38be}
+
+
+Clears the object
+
+This clears the object, i.e. all its children will be removed and deleted from the database
+
+\begin{Desc}
+\item[Returns:]returns\begin{itemize}
+\item {\bf {\tt $<$0},} in case of an error\item {\bf {\tt 0},} otherwise \end{itemize}
+\end{Desc}
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em Object}]the object to be cleared \end{description}
+\end{Desc}
+ \hypertarget{classcUPnPObjectFactory_c71bbdb30be6b0fd17f67b8850aeccdb}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!createObject@{createObject}}
+\index{createObject@{createObject}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{createObject}]{\setlength{\rightskip}{0pt plus 5cm}{\bf cUPnPClassObject} $\ast$ cUPnPObjectFactory::createObject (const char $\ast$ {\em UPnPClass}, \/ const char $\ast$ {\em Title}, \/ bool {\em Restricted} = {\tt true})}}
+\label{classcUPnPObjectFactory_c71bbdb30be6b0fd17f67b8850aeccdb}
+
+
+Creates an object
+
+This creates a new UPnP object with the specific title and the restriction.
+
+\begin{Desc}
+\item[Returns:]the newly created object \end{Desc}
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em Title}]the title of that object \item[{\em Restricted}]the restriction of the object \end{description}
+\end{Desc}
+
+
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em UPnPClass}]the class of the new object \end{description}
+\end{Desc}
+\hypertarget{classcUPnPObjectFactory_10198e67d9da1f964aa895cd463b2f92}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!deleteObject@{deleteObject}}
+\index{deleteObject@{deleteObject}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{deleteObject}]{\setlength{\rightskip}{0pt plus 5cm}int cUPnPObjectFactory::deleteObject ({\bf cUPnPClassObject} $\ast$ {\em Object})}}
+\label{classcUPnPObjectFactory_10198e67d9da1f964aa895cd463b2f92}
+
+
+Deletes the object
+
+This deletes the object in the database by removing all its children and then deleting the contents from the database
+
+\begin{Desc}
+\item[Returns:]returns\begin{itemize}
+\item {\bf {\tt $<$0},} in case of an error\item {\bf {\tt 0},} otherwise \end{itemize}
+\end{Desc}
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em Object}]the object to be deleted \end{description}
+\end{Desc}
+ \hypertarget{classcUPnPObjectFactory_5b99e366dad18ab44ee1d2da5f1c3b4d}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!getInstance@{getInstance}}
+\index{getInstance@{getInstance}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{getInstance}]{\setlength{\rightskip}{0pt plus 5cm}{\bf cUPnPObjectFactory} $\ast$ cUPnPObjectFactory::getInstance ()\hspace{0.3cm}{\tt \mbox{[}static\mbox{]}}}}
+\label{classcUPnPObjectFactory_5b99e366dad18ab44ee1d2da5f1c3b4d}
+
+
+Return the instance of the factory
+
+This returns the instance of the factory. When the media database is initialized successfully, it usally has all known mediators already registered.
+
+\begin{Desc}
+\item[Returns:]the instance of the factory \end{Desc}
+\hypertarget{classcUPnPObjectFactory_a26f57549c26c6fc15425158e7fda4b6}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!getObject@{getObject}}
+\index{getObject@{getObject}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{getObject}]{\setlength{\rightskip}{0pt plus 5cm}{\bf cUPnPClassObject} $\ast$ cUPnPObjectFactory::getObject ({\bf cUPnPObjectID} {\em ID})}}
+\label{classcUPnPObjectFactory_a26f57549c26c6fc15425158e7fda4b6}
+
+
+Get an object
+
+Retrieves a UPnP object from the database and stores its information in the object. The object is obtained via its object ID.
+
+\begin{Desc}
+\item[Returns:]the object, found in the database \end{Desc}
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em ID}]the object ID \end{description}
+\end{Desc}
+ \hypertarget{classcUPnPObjectFactory_f2b20dffcd46c08d5b2de4b6807e0689}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!registerMediator@{registerMediator}}
+\index{registerMediator@{registerMediator}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{registerMediator}]{\setlength{\rightskip}{0pt plus 5cm}void cUPnPObjectFactory::registerMediator (const char $\ast$ {\em UPnPClass}, \/ {\bf cMediatorInterface} $\ast$ {\em Mediator})}}
+\label{classcUPnPObjectFactory_f2b20dffcd46c08d5b2de4b6807e0689}
+
+
+Register a mediator
+
+This registers a new mediator by the associated class. The mediator must implement the \hyperlink{classcMediatorInterface}{cMediatorInterface} class to be used with this factory.
+
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em UPnPClass}]the class of which the mediator is associated to \item[{\em Mediator}]the mediator itself \end{description}
+\end{Desc}
+\hypertarget{classcUPnPObjectFactory_1b521c8cfa3507bec49274b606d5d2c5}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!saveObject@{saveObject}}
+\index{saveObject@{saveObject}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{saveObject}]{\setlength{\rightskip}{0pt plus 5cm}int cUPnPObjectFactory::saveObject ({\bf cUPnPClassObject} $\ast$ {\em Object})}}
+\label{classcUPnPObjectFactory_1b521c8cfa3507bec49274b606d5d2c5}
+
+
+Saves the object
+
+This saves the object in the database by updating the values in the database with those in the object.
+
+\begin{Desc}
+\item[Returns:]returns\begin{itemize}
+\item {\bf {\tt $<$0},} in case of an error\item {\bf {\tt 0},} otherwise \end{itemize}
+\end{Desc}
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em Object}]the object to be saved \end{description}
+\end{Desc}
+ \hypertarget{classcUPnPObjectFactory_ae48ef32453881a77857bf9772d79d22}{
+\index{cUPnPObjectFactory@{cUPnPObjectFactory}!unregisterMediator@{unregisterMediator}}
+\index{unregisterMediator@{unregisterMediator}!cUPnPObjectFactory@{cUPnPObjectFactory}}
+\subsubsection[{unregisterMediator}]{\setlength{\rightskip}{0pt plus 5cm}void cUPnPObjectFactory::unregisterMediator (const char $\ast$ {\em UPnPClass}, \/ bool {\em freeMediator} = {\tt true})}}
+\label{classcUPnPObjectFactory_ae48ef32453881a77857bf9772d79d22}
+
+
+Unregisters a mediator
+
+This unregisters a mediator if it is not needed anylonger. If the optional parameter {\tt freeMediator} is set, the object instance will be free'd after removing it from the list.
+
+\begin{Desc}
+\item[Parameters:]
+\begin{description}
+\item[{\em UPnPClass}]the class of the associated mediator \item[{\em freeMediator}]flag to indicate if the mediator shall be free'd after removing \end{description}
+\end{Desc}
+
+
+The documentation for this class was generated from the following files:\begin{CompactItemize}
+\item
+database/object.h\item
+database/object.cpp\end{CompactItemize}