\hypertarget{a00767}{\section{Light\+Object Class Reference}
\label{a00767}\index{Light\+Object@{Light\+Object}}
}
Inheritance diagram for Light\+Object\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=4.000000cm]{a00767}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a00767_a4e11f59b7dc6ee9b767410518ab0a41b}{Light\+Object} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
\hyperlink{a00767_a39665b8eabeaa6f1222837bf355c6176}{Light\+Object} (const \hyperlink{a00767}{Light\+Object} \&\+\_\+object)
\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item 
virtual \hyperlink{a00767_afbdcc46097b92b4c87603ff1cab0a4fd}{$\sim$\+Light\+Object} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
virtual void \hyperlink{a00767_a4d7a0e903f8f37b7ffb1c91f3f56bd07}{cleanup} ()
\begin{DoxyCompactList}\small\item\em Reset current object, including all related nodes. \end{DoxyCompactList}\item 
\hyperlink{a00329}{Base\+Object} $\ast$ \hyperlink{a00767_a0bc043cb45f1d4ed13ec281a914afe0a}{copy} ()
\item 
\hypertarget{a00767_a2273ba2d9263dcb8f60f89eea611981e}{virtual void \hyperlink{a00767_a2273ba2d9263dcb8f60f89eea611981e}{visible} (bool \+\_\+visible)}\label{a00767_a2273ba2d9263dcb8f60f89eea611981e}

\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\hypertarget{a00767_af49f7bd2db6cda77280e1a8c594562e3}{virtual bool \hyperlink{a00767_af49f7bd2db6cda77280e1a8c594562e3}{visible} ()}\label{a00767_af49f7bd2db6cda77280e1a8c594562e3}

\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\hypertarget{a00767_a07af999a51bde76c5878a3ac167b64e6}{virtual void \hyperlink{a00767_a07af999a51bde76c5878a3ac167b64e6}{show} ()}\label{a00767_a07af999a51bde76c5878a3ac167b64e6}

\begin{DoxyCompactList}\small\item\em Show Light Node. \end{DoxyCompactList}\item 
\hypertarget{a00767_a19f6aa66f124066e24b23dc2177b18d1}{virtual void \hyperlink{a00767_a19f6aa66f124066e24b23dc2177b18d1}{hide} ()}\label{a00767_a19f6aa66f124066e24b23dc2177b18d1}

\begin{DoxyCompactList}\small\item\em Hide Light Node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}{\bf Name and Path handling}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00767_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}{\bf Object Information}\par
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a00767_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}{\bf Picking}\par
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{a00767_a8fa33abfb5151b425577c8c6364b3470}{picked} (uint \+\_\+node\+\_\+idx)
\begin{DoxyCompactList}\small\item\em detect if the node has been picked \end{DoxyCompactList}\item 
\hypertarget{a00767_ad421670d85e47deddee44bd5fce1bad2}{void \hyperlink{a00767_ad421670d85e47deddee44bd5fce1bad2}{enable\+Picking} (bool \+\_\+enable)}\label{a00767_ad421670d85e47deddee44bd5fce1bad2}

\begin{DoxyCompactList}\small\item\em Enable or disable picking for this Object. \end{DoxyCompactList}\item 
\hypertarget{a00767_abdddc85b351ea17aa474abad0cf38e4c}{bool \hyperlink{a00767_abdddc85b351ea17aa474abad0cf38e4c}{picking\+Enabled} ()}\label{a00767_abdddc85b351ea17aa474abad0cf38e4c}

\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{a00767_ad78ec18ccfa3ebf23b2092790cf73818}{init} (\hyperlink{a02300_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$\+\_\+light=0, \hyperlink{a02300_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}{\bf Update handling}\par
{\em This is mostly private. Updates have to be triggered via emit updated\+Object() }\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{a00767_a74c3e3ae28c1ce6d16427682c7d11407}{update} (\hyperlink{a01393}{Update\+Type} \+\_\+type=\hyperlink{a03407_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L})
\begin{DoxyCompactList}\small\item\em Update the Light Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00767_ae050e0f0f4616a9a35294a55d729703c}{class {\bfseries Type\+Light\+Plugin}}\label{a00767_ae050e0f0f4616a9a35294a55d729703c}

\item 
\hypertarget{a00767_ad9e1a771ccdcb3f6956b215e382de901}{class {\bfseries Light\+Widget}}\label{a00767_ad9e1a771ccdcb3f6956b215e382de901}

\end{DoxyCompactItemize}
\subsection*{Contents}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a02300_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} \hyperlink{a00767_ad71f3e1b9195d0c99f8c671f1d6894fc}{light\+Source\+\_\+}
\item 
bool \hyperlink{a00767_aea0b8756067ebea59c659c1aa07c3b6d}{default\+Light\+Source\+\_\+}
\item 
\hyperlink{a02300_a900cb76bdc11e059a3652f43a5653265}{Light\+Source} $\ast$ \hyperlink{a00767_a1b03f5bf936c5c52da1c986fd7fd50d2}{light\+Source} ()
\item 
\hypertarget{a00767_a29115391a2bd28683147082cf7b2df40}{bool \hyperlink{a00767_a29115391a2bd28683147082cf7b2df40}{default\+Light} () const }\label{a00767_a29115391a2bd28683147082cf7b2df40}

\begin{DoxyCompactList}\small\item\em Is light default light source? \end{DoxyCompactList}\item 
\hypertarget{a00767_a7f60ab2ae01f63d7bf2fbf610fc3060a}{void \hyperlink{a00767_a7f60ab2ae01f63d7bf2fbf610fc3060a}{default\+Light} (const bool \+\_\+default)}\label{a00767_a7f60ab2ae01f63d7bf2fbf610fc3060a}

\begin{DoxyCompactList}\small\item\em Set light object to be default light. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Visualization}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00767_aa75cc617e1fc32fe284417ee2c71dbfe}{\hyperlink{a02300_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a00767_aa75cc617e1fc32fe284417ee2c71dbfe}{light\+Node\+\_\+}}\label{a00767_aa75cc617e1fc32fe284417ee2c71dbfe}

\begin{DoxyCompactList}\small\item\em Light status node. \end{DoxyCompactList}\item 
\hypertarget{a00767_a1a8cd0bb13d4cb3693be393fb2cfe06f}{\hyperlink{a02300_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a00767_a1a8cd0bb13d4cb3693be393fb2cfe06f}{light\+Node\+Vis\+\_\+}}\label{a00767_a1a8cd0bb13d4cb3693be393fb2cfe06f}

\begin{DoxyCompactList}\small\item\em Light rendering node (only for rendering purposes) \end{DoxyCompactList}\item 
\hypertarget{a00767_ace122d92f21af34725b79dd67a6e15b6}{\hyperlink{a02300_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a00767_ace122d92f21af34725b79dd67a6e15b6}{light\+Node} ()}\label{a00767_ace122d92f21af34725b79dd67a6e15b6}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\hypertarget{a00767_a986caccfba00e3e4b6aa1db4f6b4d8ac}{\hyperlink{a02300_a2b1ba2b2ef06f92528e34551f9d39853}{Light\+Node} $\ast$ \hyperlink{a00767_a986caccfba00e3e4b6aa1db4f6b4d8ac}{light\+Node\+Vis} ()}\label{a00767_a986caccfba00e3e4b6aa1db4f6b4d8ac}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\hypertarget{a00767_acecf6cd1463b8b3f7b26dba5ce630cfa}{virtual bool \hyperlink{a00767_acecf6cd1463b8b3f7b26dba5ce630cfa}{has\+Node} (\hyperlink{a02486_a5bfac87fd7e6d7cd056e34dbb133de0d}{Base\+Node} $\ast$\+\_\+node)}\label{a00767_acecf6cd1463b8b3f7b26dba5ce630cfa}

\begin{DoxyCompactList}\small\item\em Light status node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}


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



\subsection{Constructor \& Destructor Documentation}
\hypertarget{a00767_a4e11f59b7dc6ee9b767410518ab0a41b}{\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection[{Light\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Light\+Object\+::\+Light\+Object (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a00767_a4e11f59b7dc6ee9b767410518ab0a41b}


constructor 

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

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

\hypertarget{a00767_a39665b8eabeaa6f1222837bf355c6176}{\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\index{Light\+Object@{Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection[{Light\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Light\+Object\+::\+Light\+Object (
\begin{DoxyParamCaption}
\item[{const {\bf Light\+Object} \&}]{\+\_\+object}
\end{DoxyParamCaption}
)}}\label{a00767_a39665b8eabeaa6f1222837bf355c6176}


copy constructor 

Create a copy of this object

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

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

\hypertarget{a00767_afbdcc46097b92b4c87603ff1cab0a4fd}{\index{Light\+Object@{Light\+Object}!````~Light\+Object@{$\sim$\+Light\+Object}}
\index{````~Light\+Object@{$\sim$\+Light\+Object}!Light\+Object@{Light\+Object}}
\subsubsection[{$\sim$\+Light\+Object}]{\setlength{\rightskip}{0pt plus 5cm}Light\+Object\+::$\sim$\+Light\+Object (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_afbdcc46097b92b4c87603ff1cab0a4fd}


destructor 

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

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



\subsection{Member Function Documentation}
\hypertarget{a00767_a4d7a0e903f8f37b7ffb1c91f3f56bd07}{\index{Light\+Object@{Light\+Object}!cleanup@{cleanup}}
\index{cleanup@{cleanup}!Light\+Object@{Light\+Object}}
\subsubsection[{cleanup}]{\setlength{\rightskip}{0pt plus 5cm}void Light\+Object\+::cleanup (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_a4d7a0e903f8f37b7ffb1c91f3f56bd07}


Reset current object, including all related nodes. 

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

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



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

\hypertarget{a00767_a0bc043cb45f1d4ed13ec281a914afe0a}{\index{Light\+Object@{Light\+Object}!copy@{copy}}
\index{copy@{copy}!Light\+Object@{Light\+Object}}
\subsubsection[{copy}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Base\+Object} $\ast$ Light\+Object\+::copy (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_a0bc043cb45f1d4ed13ec281a914afe0a}
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{a00329_aa914502976b64d3048fe068cd0097e67}{Base\+Object}.



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

\hypertarget{a00767_ac55137f3244cc3b8a2403b19b5d75423}{\index{Light\+Object@{Light\+Object}!get\+Objectinfo@{get\+Objectinfo}}
\index{get\+Objectinfo@{get\+Objectinfo}!Light\+Object@{Light\+Object}}
\subsubsection[{get\+Objectinfo}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Light\+Object\+::get\+Objectinfo (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_ac55137f3244cc3b8a2403b19b5d75423}


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{a00329_a16966c1c32af694839bc4d31eed8759b}{Base\+Object\+Data\+::get\+Objectinfo}

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


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



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

\hypertarget{a00767_ad78ec18ccfa3ebf23b2092790cf73818}{\index{Light\+Object@{Light\+Object}!init@{init}}
\index{init@{init}!Light\+Object@{Light\+Object}}
\subsubsection[{init}]{\setlength{\rightskip}{0pt plus 5cm}void Light\+Object\+::init (
\begin{DoxyParamCaption}
\item[{{\bf Light\+Node} $\ast$}]{\+\_\+light = {\ttfamily 0}, }
\item[{{\bf Light\+Node} $\ast$}]{\+\_\+light\+Vis = {\ttfamily 0}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{a00767_ad78ec18ccfa3ebf23b2092790cf73818}


Initialize current object, including all related nodes. 

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

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

\hypertarget{a00767_a1b03f5bf936c5c52da1c986fd7fd50d2}{\index{Light\+Object@{Light\+Object}!light\+Source@{light\+Source}}
\index{light\+Source@{light\+Source}!Light\+Object@{Light\+Object}}
\subsubsection[{light\+Source}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Light\+Source} $\ast$ Light\+Object\+::light\+Source (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a00767_a1b03f5bf936c5c52da1c986fd7fd50d2}
True if light is default light source initially added to a blank scene 

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

\hypertarget{a00767_a8fa33abfb5151b425577c8c6364b3470}{\index{Light\+Object@{Light\+Object}!picked@{picked}}
\index{picked@{picked}!Light\+Object@{Light\+Object}}
\subsubsection[{picked}]{\setlength{\rightskip}{0pt plus 5cm}bool Light\+Object\+::picked (
\begin{DoxyParamCaption}
\item[{uint}]{\+\_\+node\+\_\+idx}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_a8fa33abfb5151b425577c8c6364b3470}


detect if the node has been picked 

Given an node index from \hyperlink{a03393_a0ae515c8553f9e7f671bd2627bbecf6a}{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{a00330_afdb0f57814b92dd4ad19c81b1601857c}{Base\+Object\+Data}.



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

\hypertarget{a00767_aa4c1c55dce8a37fb8746a28f695c4c7a}{\index{Light\+Object@{Light\+Object}!set\+Name@{set\+Name}}
\index{set\+Name@{set\+Name}!Light\+Object@{Light\+Object}}
\subsubsection[{set\+Name}]{\setlength{\rightskip}{0pt plus 5cm}void Light\+Object\+::set\+Name (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00767_aa4c1c55dce8a37fb8746a28f695c4c7a}


Set the name of the Object. 

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

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



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

\hypertarget{a00767_a74c3e3ae28c1ce6d16427682c7d11407}{\index{Light\+Object@{Light\+Object}!update@{update}}
\index{update@{update}!Light\+Object@{Light\+Object}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}void Light\+Object\+::update (
\begin{DoxyParamCaption}
\item[{{\bf Update\+Type}}]{\+\_\+type = {\ttfamily {\bf U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L}}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{a00767_a74c3e3ae28c1ce6d16427682c7d11407}


Update the Light Object. 

Updates the rendering of the light object 

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



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



\subsection{Member Data Documentation}
\hypertarget{a00767_aea0b8756067ebea59c659c1aa07c3b6d}{\index{Light\+Object@{Light\+Object}!default\+Light\+Source\+\_\+@{default\+Light\+Source\+\_\+}}
\index{default\+Light\+Source\+\_\+@{default\+Light\+Source\+\_\+}!Light\+Object@{Light\+Object}}
\subsubsection[{default\+Light\+Source\+\_\+}]{\setlength{\rightskip}{0pt plus 5cm}bool Light\+Object\+::default\+Light\+Source\+\_\+\hspace{0.3cm}{\ttfamily [private]}}}\label{a00767_aea0b8756067ebea59c659c1aa07c3b6d}
True if light is default light source initially added to a blank scene 

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

\hypertarget{a00767_ad71f3e1b9195d0c99f8c671f1d6894fc}{\index{Light\+Object@{Light\+Object}!light\+Source\+\_\+@{light\+Source\+\_\+}}
\index{light\+Source\+\_\+@{light\+Source\+\_\+}!Light\+Object@{Light\+Object}}
\subsubsection[{light\+Source\+\_\+}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Light\+Source} Light\+Object\+::light\+Source\+\_\+\hspace{0.3cm}{\ttfamily [private]}}}\label{a00767_ad71f3e1b9195d0c99f8c671f1d6894fc}
True if light is default light source initially added to a blank scene 

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



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