\hypertarget{a00386}{\section{Camera\+Object Class Reference}
\label{a00386}\index{Camera\+Object@{Camera\+Object}}
}
Inheritance diagram for Camera\+Object\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=4.000000cm]{a00386}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{a00386_a5bdd14a6c65d9cc58f993675481137f6}{Camera\+Object} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
\hyperlink{a00386_a4e229723e96453df63f838c6be7c4ed1}{Camera\+Object} (const \hyperlink{a00386}{Camera\+Object} \&\+\_\+object)
\begin{DoxyCompactList}\small\item\em copy constructor \end{DoxyCompactList}\item 
virtual \hyperlink{a00386_adf8d302a25ddd4db4f75bfd1dceec5bf}{$\sim$\+Camera\+Object} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
virtual void \hyperlink{a00386_ad57488f191a622e24cd17504f860e999}{cleanup} ()
\begin{DoxyCompactList}\small\item\em Reset current object, including all related nodes. \end{DoxyCompactList}\item 
\hyperlink{a00329}{Base\+Object} $\ast$ \hyperlink{a00386_a61636077b0f20786db93d797926a8792}{copy} ()
\item 
\hypertarget{a00386_a3cc70c51a5a85fb8615e08c70c558513}{void {\bfseries viewer\+Id} (int \+\_\+viewer\+Id)}\label{a00386_a3cc70c51a5a85fb8615e08c70c558513}

\item 
\hypertarget{a00386_aca403131d30c692dec262ee53d60370c}{int {\bfseries viewer\+Id} ()}\label{a00386_aca403131d30c692dec262ee53d60370c}

\item 
\hypertarget{a00386_a914bf3fe53975ed6493557c865e28b9d}{void {\bfseries examiner\+Id} (int \+\_\+examiner\+Id)}\label{a00386_a914bf3fe53975ed6493557c865e28b9d}

\item 
\hypertarget{a00386_aca2ec723bd3b3bca73852b26f51e5984}{int {\bfseries examiner\+Id} ()}\label{a00386_aca2ec723bd3b3bca73852b26f51e5984}

\end{DoxyCompactItemize}
\begin{Indent}{\bf Name and Path handling}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a00386_a170c94b6bb5bfe6e516b1faee53a4187}{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{a00386_a7c9542d761d03539da35422be48791f9}{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{a00386_a6551b8d021c636a2ecb4d41d73df61d4}{picked} (uint \+\_\+node\+\_\+idx)
\begin{DoxyCompactList}\small\item\em detect if the node has been picked \end{DoxyCompactList}\item 
\hypertarget{a00386_a99ec62a55855cbbe518f1c6a3a90883a}{void \hyperlink{a00386_a99ec62a55855cbbe518f1c6a3a90883a}{enable\+Picking} (bool \+\_\+enable)}\label{a00386_a99ec62a55855cbbe518f1c6a3a90883a}

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

\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{a00386_a21d3d4e29eb3525f2dcbfea85c1667c9}{init} (\hyperlink{a02278_ac2e8b686e62de63924153cbe126217c4}{Camera\+Node} $\ast$\+\_\+plane=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 
\hypertarget{a00386_ae0b306dfb7af182026b0af3aa7dc8ae8}{virtual void \hyperlink{a00386_ae0b306dfb7af182026b0af3aa7dc8ae8}{update} (\hyperlink{a01393}{Update\+Type} \+\_\+type=\hyperlink{a03407_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L})}\label{a00386_ae0b306dfb7af182026b0af3aa7dc8ae8}

\begin{DoxyCompactList}\small\item\em Update the whole Object (Selection,Topology,...) \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00386_ac24fa37f40bea90717c479f830f53673}{int \hyperlink{a00386_ac24fa37f40bea90717c479f830f53673}{viewer\+Id\+\_\+}}\label{a00386_ac24fa37f40bea90717c479f830f53673}

\begin{DoxyCompactList}\small\item\em Attached viewer id. \end{DoxyCompactList}\item 
\hypertarget{a00386_a7d35507e2f3154c9200304988c5f44da}{int \hyperlink{a00386_a7d35507e2f3154c9200304988c5f44da}{examiner\+Id\+\_\+}}\label{a00386_a7d35507e2f3154c9200304988c5f44da}

\begin{DoxyCompactList}\small\item\em Attached examiner id. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00386_a77a2175b1196b4d820c3d9ec7caa2791}{class {\bfseries Type\+Camera\+Plugin}}\label{a00386_a77a2175b1196b4d820c3d9ec7caa2791}

\end{DoxyCompactItemize}
\subsection*{Visualization}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00386_a87a6b909419e25e7cebef066d7e32131}{\hyperlink{a02278_ac2e8b686e62de63924153cbe126217c4}{Camera\+Node} $\ast$ \hyperlink{a00386_a87a6b909419e25e7cebef066d7e32131}{camera\+Node\+\_\+}}\label{a00386_a87a6b909419e25e7cebef066d7e32131}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\item 
\hypertarget{a00386_ae5e91ada9ed828e1a9b3968bd7ee34e2}{\hyperlink{a02278_ac2e8b686e62de63924153cbe126217c4}{Camera\+Node} $\ast$ \hyperlink{a00386_ae5e91ada9ed828e1a9b3968bd7ee34e2}{camera\+Node} ()}\label{a00386_ae5e91ada9ed828e1a9b3968bd7ee34e2}

\begin{DoxyCompactList}\small\item\em Get the scenegraph Node. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}


Definition at line 82 of file Camera\+Object.\+hh.



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


constructor 

Constructor for Camera Objects. This object class gets a Separator Node giving the root node to which it should be connected. The camera is generated internally and all nodes for visualization will be added below the scenegraph node.~\newline
You dont need to create an object of this type manually. Use Plugin\+Functions\+::add\+Camera instead. ( see Types.\+hh\+::\+Data\+Type ) 

Definition at line 78 of file Camera\+Object.\+cc.

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


copy constructor 

Create a copy of this object

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

Definition at line 92 of file Camera\+Object.\+cc.

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


destructor 

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

Definition at line 104 of file Camera\+Object.\+cc.



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


Reset current object, including all related nodes. 

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

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



Definition at line 120 of file Camera\+Object.\+cc.

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

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


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 191 of file Camera\+Object.\+cc.

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


Initialize current object, including all related nodes. 

This function initalizes the camera object. It creates the scenegraph nodes. 

Definition at line 142 of file Camera\+Object.\+cc.

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


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 camera\+Node of the object has been picked.


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


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



Definition at line 221 of file Camera\+Object.\+cc.

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


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 167 of file Camera\+Object.\+cc.



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