\hypertarget{a11332}{}\section{Light\+Object Class Reference}
\label{a11332}\index{Light\+Object@{Light\+Object}}
Inheritance diagram for Light\+Object\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=4.000000cm]{a11332}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a11332_a4e11f59b7dc6ee9b767410518ab0a41b}{Light\+Object} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
\hyperlink{a11332_a39665b8eabeaa6f1222837bf355c6176}{Light\+Object} (const \hyperlink{a11332}{Light\+Object} \&\+\_\+object)
\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item 
virtual \hyperlink{a11332_afbdcc46097b92b4c87603ff1cab0a4fd}{$\sim$\+Light\+Object} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
virtual void \hyperlink{a11332_a4d7a0e903f8f37b7ffb1c91f3f56bd07}{cleanup} ()
\begin{DoxyCompactList}\small\item\em Reset current object, including all related nodes. \end{DoxyCompactList}\item 
\hyperlink{a07036}{Base\+Object} $\ast$ \hyperlink{a11332_a0bc043cb45f1d4ed13ec281a914afe0a}{copy} ()
\item 
\mbox{\Hypertarget{a11332_a2273ba2d9263dcb8f60f89eea611981e}\label{a11332_a2273ba2d9263dcb8f60f89eea611981e}} 
virtual void \hyperlink{a11332_a2273ba2d9263dcb8f60f89eea611981e}{visible} (bool \+\_\+visible)
\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_af49f7bd2db6cda77280e1a8c594562e3}\label{a11332_af49f7bd2db6cda77280e1a8c594562e3}} 
virtual bool \hyperlink{a11332_af49f7bd2db6cda77280e1a8c594562e3}{visible} ()
\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_a07af999a51bde76c5878a3ac167b64e6}\label{a11332_a07af999a51bde76c5878a3ac167b64e6}} 
virtual void \hyperlink{a11332_a07af999a51bde76c5878a3ac167b64e6}{show} ()
\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_a19f6aa66f124066e24b23dc2177b18d1}\label{a11332_a19f6aa66f124066e24b23dc2177b18d1}} 
virtual void \hyperlink{a11332_a19f6aa66f124066e24b23dc2177b18d1}{hide} ()
\begin{DoxyCompactList}\small\item\em Hide Light Node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}\textbf{ Name and Path handling}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a11332_aa4c1c55dce8a37fb8746a28f695c4c7a}{set\+Name} (Q\+String \+\_\+name)
\begin{DoxyCompactList}\small\item\em Set the name of the Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Object Information}\par
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a11332_ac55137f3244cc3b8a2403b19b5d75423}{get\+Objectinfo} ()
\begin{DoxyCompactList}\small\item\em Get all Info for the Object as a string. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Picking}\par
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a11332_a8fa33abfb5151b425577c8c6364b3470}{picked} (uint \+\_\+node\+\_\+idx)
\begin{DoxyCompactList}\small\item\em detect if the node has been picked \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_ad421670d85e47deddee44bd5fce1bad2}\label{a11332_ad421670d85e47deddee44bd5fce1bad2}} 
void \hyperlink{a11332_ad421670d85e47deddee44bd5fce1bad2}{enable\+Picking} (bool \+\_\+enable)
\begin{DoxyCompactList}\small\item\em Enable or disable picking for this Object. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_abdddc85b351ea17aa474abad0cf38e4c}\label{a11332_abdddc85b351ea17aa474abad0cf38e4c}} 
bool \hyperlink{a11332_abdddc85b351ea17aa474abad0cf38e4c}{picking\+Enabled} ()
\begin{DoxyCompactList}\small\item\em Check if picking is enabled for this Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{a11332_ad78ec18ccfa3ebf23b2092790cf73818}{init} (\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$\+\_\+light=0, \hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$\+\_\+light\+Vis=0)
\begin{DoxyCompactList}\small\item\em Initialize current object, including all related nodes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}\textbf{ Update handling}\par
{\em This is mostly private. Updates have to be triggered via emit updated\+Object() }\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{a11332_a74c3e3ae28c1ce6d16427682c7d11407}{update} (\hyperlink{a07096}{Update\+Type} \+\_\+type=\hyperlink{a06166_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+LL})
\begin{DoxyCompactList}\small\item\em Update the Light Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11332_ae050e0f0f4616a9a35294a55d729703c}\label{a11332_ae050e0f0f4616a9a35294a55d729703c}} 
class {\bfseries Type\+Light\+Plugin}
\item 
\mbox{\Hypertarget{a11332_ad9e1a771ccdcb3f6956b215e382de901}\label{a11332_ad9e1a771ccdcb3f6956b215e382de901}} 
class {\bfseries Light\+Widget}
\end{DoxyCompactItemize}
\subsection*{Contents}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a04955_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} \hyperlink{a11332_ad71f3e1b9195d0c99f8c671f1d6894fc}{light\+Source\+\_\+}
\item 
bool \hyperlink{a11332_aea0b8756067ebea59c659c1aa07c3b6d}{default\+Light\+Source\+\_\+}
\item 
\hyperlink{a04955_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} $\ast$ \hyperlink{a11332_a1b03f5bf936c5c52da1c986fd7fd50d2}{light\+Source} ()
\item 
\mbox{\Hypertarget{a11332_a36a496c8861dae60b270966a27a43293}\label{a11332_a36a496c8861dae60b270966a27a43293}} 
bool \hyperlink{a11332_a36a496c8861dae60b270966a27a43293}{default\+Light} () const
\begin{DoxyCompactList}\small\item\em Is light default light source? \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_a7f60ab2ae01f63d7bf2fbf610fc3060a}\label{a11332_a7f60ab2ae01f63d7bf2fbf610fc3060a}} 
void \hyperlink{a11332_a7f60ab2ae01f63d7bf2fbf610fc3060a}{default\+Light} (const bool \+\_\+default)
\begin{DoxyCompactList}\small\item\em Set light object to be default light. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Visualization}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11332_aa75cc617e1fc32fe284417ee2c71dbfe}\label{a11332_aa75cc617e1fc32fe284417ee2c71dbfe}} 
\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a11332_aa75cc617e1fc32fe284417ee2c71dbfe}{light\+Node\+\_\+}
\begin{DoxyCompactList}\small\item\em Light status node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_a1a8cd0bb13d4cb3693be393fb2cfe06f}\label{a11332_a1a8cd0bb13d4cb3693be393fb2cfe06f}} 
\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a11332_a1a8cd0bb13d4cb3693be393fb2cfe06f}{light\+Node\+Vis\+\_\+}
\begin{DoxyCompactList}\small\item\em Light rendering node (only for rendering purposes) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_ace122d92f21af34725b79dd67a6e15b6}\label{a11332_ace122d92f21af34725b79dd67a6e15b6}} 
\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a11332_ace122d92f21af34725b79dd67a6e15b6}{light\+Node} ()
\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_a986caccfba00e3e4b6aa1db4f6b4d8ac}\label{a11332_a986caccfba00e3e4b6aa1db4f6b4d8ac}} 
\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a11332_a986caccfba00e3e4b6aa1db4f6b4d8ac}{light\+Node\+Vis} ()
\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11332_acecf6cd1463b8b3f7b26dba5ce630cfa}\label{a11332_acecf6cd1463b8b3f7b26dba5ce630cfa}} 
virtual bool \hyperlink{a11332_acecf6cd1463b8b3f7b26dba5ce630cfa}{has\+Node} (\hyperlink{a00182_a5bfac87fd7e6d7cd056e34dbb133de0d}{Base\+Node} $\ast$\+\_\+node)
\begin{DoxyCompactList}\small\item\em Light status node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}


Definition at line 72 of file Light\+Object.\+hh.



\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{a11332_a4e11f59b7dc6ee9b767410518ab0a41b}\label{a11332_a4e11f59b7dc6ee9b767410518ab0a41b}} 
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{Light\+Object()}{LightObject()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily Light\+Object\+::\+Light\+Object (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



constructor 

Constructor for Light Objects. You dont need to create an object of this type manually. 

Definition at line 111 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_a39665b8eabeaa6f1222837bf355c6176}\label{a11332_a39665b8eabeaa6f1222837bf355c6176}} 
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{Light\+Object()}{LightObject()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily Light\+Object\+::\+Light\+Object (\begin{DoxyParamCaption}\item[{const \hyperlink{a11332}{Light\+Object} \&}]{\+\_\+object }\end{DoxyParamCaption})}



copy constructor 

Create a copy of this object

Copy Constructor -\/ generates a copy of the given object 

Definition at line 130 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_afbdcc46097b92b4c87603ff1cab0a4fd}\label{a11332_afbdcc46097b92b4c87603ff1cab0a4fd}} 
\index{Light\+Object@{Light\+Object}!````~Light\+Object@{$\sim$\+Light\+Object}}
\index{````~Light\+Object@{$\sim$\+Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{$\sim$\+Light\+Object()}{~LightObject()}}
{\footnotesize\ttfamily Light\+Object\+::$\sim$\+Light\+Object (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



destructor 

Destructor for Light Objects. The destructor deletes the light and all Scenegraph nodes associated with the Light or the object. 

Definition at line 143 of file Light\+Object.\+cc.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a11332_a4d7a0e903f8f37b7ffb1c91f3f56bd07}\label{a11332_a4d7a0e903f8f37b7ffb1c91f3f56bd07}} 
\index{Light\+Object@{Light\+Object}!cleanup@{cleanup}}
\index{cleanup@{cleanup}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{cleanup()}{cleanup()}}
{\footnotesize\ttfamily void Light\+Object\+::cleanup (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Reset current object, including all related nodes. 

Cleanup Function for Light Objects. Deletes the contents of the whole object and calls \hyperlink{a11332_ad78ec18ccfa3ebf23b2092790cf73818}{Light\+Object\+::init} afterwards. 

Reimplemented from \hyperlink{a07044_ae8e8f4f5995a356a9876d354c2822afd}{Base\+Object\+Data}.



Definition at line 171 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_a0bc043cb45f1d4ed13ec281a914afe0a}\label{a11332_a0bc043cb45f1d4ed13ec281a914afe0a}} 
\index{Light\+Object@{Light\+Object}!copy@{copy}}
\index{copy@{copy}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{copy()}{copy()}}
{\footnotesize\ttfamily \hyperlink{a07036}{Base\+Object} $\ast$ Light\+Object\+::copy (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

return a full copy of this object ( All scenegraph nodes will be created ) but the object will not be a part of the object tree.

Generate a copy 

Reimplemented from \hyperlink{a07036_aa914502976b64d3048fe068cd0097e67}{Base\+Object}.



Definition at line 187 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_ac55137f3244cc3b8a2403b19b5d75423}\label{a11332_ac55137f3244cc3b8a2403b19b5d75423}} 
\index{Light\+Object@{Light\+Object}!get\+Objectinfo@{get\+Objectinfo}}
\index{get\+Objectinfo@{get\+Objectinfo}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{get\+Objectinfo()}{getObjectinfo()}}
{\footnotesize\ttfamily Q\+String Light\+Object\+::get\+Objectinfo (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Get all Info for the Object as a string. 

Returns a string containing all information about the current object. This also includes the information provided by \hyperlink{a07036_a16966c1c32af694839bc4d31eed8759b}{Base\+Object\+Data\+::get\+Objectinfo}

\begin{DoxyReturn}{Returns}
String containing the object information 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07036_a16966c1c32af694839bc4d31eed8759b}{Base\+Object}.



Definition at line 254 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_ad78ec18ccfa3ebf23b2092790cf73818}\label{a11332_ad78ec18ccfa3ebf23b2092790cf73818}} 
\index{Light\+Object@{Light\+Object}!init@{init}}
\index{init@{init}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{init()}{init()}}
{\footnotesize\ttfamily void Light\+Object\+::init (\begin{DoxyParamCaption}\item[{\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$}]{\+\_\+light = {\ttfamily 0},  }\item[{\hyperlink{a04955_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$}]{\+\_\+light\+Vis = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}



Initialize current object, including all related nodes. 

This function initializes the light object. It creates the scenegraph nodes. 

Definition at line 194 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_a1b03f5bf936c5c52da1c986fd7fd50d2}\label{a11332_a1b03f5bf936c5c52da1c986fd7fd50d2}} 
\index{Light\+Object@{Light\+Object}!light\+Source@{light\+Source}}
\index{light\+Source@{light\+Source}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{light\+Source()}{lightSource()}}
{\footnotesize\ttfamily \hyperlink{a04955_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} $\ast$ Light\+Object\+::light\+Source (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

True if light is default light source initially added to a blank scene 

Definition at line 326 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_a8fa33abfb5151b425577c8c6364b3470}\label{a11332_a8fa33abfb5151b425577c8c6364b3470}} 
\index{Light\+Object@{Light\+Object}!picked@{picked}}
\index{picked@{picked}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{picked()}{picked()}}
{\footnotesize\ttfamily bool Light\+Object\+::picked (\begin{DoxyParamCaption}\item[{uint}]{\+\_\+node\+\_\+idx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



detect if the node has been picked 

Given an node index from \hyperlink{a06173_aa407abcd8a862ac0addd816e14ae5766}{Plugin\+Functions\+::scenegraph\+Pick} this function can be used to check if the light\+Node of the object has been picked.


\begin{DoxyParams}{Parameters}
{\em \+\_\+node\+\_\+idx} & Index of the picked light node \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
bool if the light\+Node of this object is the picking target. 
\end{DoxyReturn}


Reimplemented from \hyperlink{a07044_afdb0f57814b92dd4ad19c81b1601857c}{Base\+Object\+Data}.



Definition at line 283 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_aa4c1c55dce8a37fb8746a28f695c4c7a}\label{a11332_aa4c1c55dce8a37fb8746a28f695c4c7a}} 
\index{Light\+Object@{Light\+Object}!set\+Name@{set\+Name}}
\index{set\+Name@{set\+Name}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{set\+Name()}{setName()}}
{\footnotesize\ttfamily void Light\+Object\+::set\+Name (\begin{DoxyParamCaption}\item[{Q\+String}]{\+\_\+name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Set the name of the Object. 

Set the name of an object. All Scenegraph nodes are renamed too. It also calls \hyperlink{a07044_a625a358192b886259eec57f134f0b363}{Base\+Object\+Data\+::set\+Name}. 

Reimplemented from \hyperlink{a07044_a625a358192b886259eec57f134f0b363}{Base\+Object\+Data}.



Definition at line 213 of file Light\+Object.\+cc.

\mbox{\Hypertarget{a11332_a74c3e3ae28c1ce6d16427682c7d11407}\label{a11332_a74c3e3ae28c1ce6d16427682c7d11407}} 
\index{Light\+Object@{Light\+Object}!update@{update}}
\index{update@{update}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{update()}{update()}}
{\footnotesize\ttfamily void Light\+Object\+::update (\begin{DoxyParamCaption}\item[{\hyperlink{a07096}{Update\+Type}}]{\+\_\+type = {\ttfamily \hyperlink{a06166_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+LL}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}



Update the Light Object. 

Updates the rendering of the light object 

Reimplemented from \hyperlink{a07044_a26063c9234d22ec1306e4f163e3f88be}{Base\+Object\+Data}.



Definition at line 330 of file Light\+Object.\+cc.



\subsection{Member Data Documentation}
\mbox{\Hypertarget{a11332_aea0b8756067ebea59c659c1aa07c3b6d}\label{a11332_aea0b8756067ebea59c659c1aa07c3b6d}} 
\index{Light\+Object@{Light\+Object}!default\+Light\+Source\+\_\+@{default\+Light\+Source\+\_\+}}
\index{default\+Light\+Source\+\_\+@{default\+Light\+Source\+\_\+}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{default\+Light\+Source\+\_\+}{defaultLightSource\_}}
{\footnotesize\ttfamily bool Light\+Object\+::default\+Light\+Source\+\_\+\hspace{0.3cm}{\ttfamily [private]}}

True if light is default light source initially added to a blank scene 

Definition at line 134 of file Light\+Object.\+hh.

\mbox{\Hypertarget{a11332_ad71f3e1b9195d0c99f8c671f1d6894fc}\label{a11332_ad71f3e1b9195d0c99f8c671f1d6894fc}} 
\index{Light\+Object@{Light\+Object}!light\+Source\+\_\+@{light\+Source\+\_\+}}
\index{light\+Source\+\_\+@{light\+Source\+\_\+}!Light\+Object@{Light\+Object}}
\subsubsection{\texorpdfstring{light\+Source\+\_\+}{lightSource\_}}
{\footnotesize\ttfamily \hyperlink{a04955_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} Light\+Object\+::light\+Source\+\_\+\hspace{0.3cm}{\ttfamily [private]}}

True if light is default light source initially added to a blank scene 

Definition at line 130 of file Light\+Object.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Type-\/\+Light/\+Object\+Types/\+Light/\hyperlink{a04952}{Light\+Object.\+hh}\item 
Type-\/\+Light/\+Object\+Types/\+Light/Light\+Object.\+cc\end{DoxyCompactItemize}
