diff options
Diffstat (limited to 'doc/latex/classcUPnPObjectFactory.tex')
-rw-r--r-- | doc/latex/classcUPnPObjectFactory.tex | 199 |
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} |