\hypertarget{PluginFunctions_8hh}{}\section{Open\+Flipper/\+Base\+Plugin/\+Plugin\+Functions.hh File Reference}
\label{PluginFunctions_8hh}\index{Open\+Flipper/\+Base\+Plugin/\+Plugin\+Functions.\+hh@{Open\+Flipper/\+Base\+Plugin/\+Plugin\+Functions.\+hh}}
{\ttfamily \#include $<$Q\+Pair$>$}\newline
{\ttfamily \#include $<$Q\+File\+Dialog$>$}\newline
{\ttfamily \#include $<$Open\+Flipper/common/\+Types.\+hh$>$}\newline
{\ttfamily \#include $<$Open\+Flipper/common/\+O\+F\+G\+L\+Widget.\+hh$>$}\newline
{\ttfamily \#include $<$A\+C\+G/\+Scenegraph/\+Scene\+Graph.\+hh$>$}\newline
{\ttfamily \#include $<$Open\+Flipper/\+Base\+Plugin/\+Plugin\+Functions\+View\+Controls.\+hh$>$}\newline
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{classPluginFunctions_1_1ObjectIterator}{Plugin\+Functions\+::\+Object\+Iterator}
\begin{DoxyCompactList}\small\item\em \hyperlink{classCore}{Core} Data Iterator. \end{DoxyCompactList}\item 
class \hyperlink{classPluginFunctions_1_1ObjectReferenceIterator}{Plugin\+Functions\+::\+Object\+Reference\+Iterator}
\begin{DoxyCompactList}\small\item\em Helper class that wraps an \hyperlink{classPluginFunctions_1_1ObjectIterator}{Object\+Iterator} to return a reference instead of a pointer. \end{DoxyCompactList}\item 
class \hyperlink{classPluginFunctions_1_1ObjectRange}{Plugin\+Functions\+::\+Object\+Range}
\begin{DoxyCompactList}\small\item\em Range adapter for \hyperlink{classPluginFunctions_1_1ObjectIterator}{Object\+Iterator}. \end{DoxyCompactList}\item 
class \hyperlink{classPluginFunctions_1_1ObjectReferenceRange}{Plugin\+Functions\+::\+Object\+Reference\+Range}
\begin{DoxyCompactList}\small\item\em Range adapter for \hyperlink{classPluginFunctions_1_1ObjectIterator}{Object\+Iterator}. \end{DoxyCompactList}\item 
class \hyperlink{classPluginFunctions_1_1BaseObjectIterator}{Plugin\+Functions\+::\+Base\+Object\+Iterator}
\begin{DoxyCompactList}\small\item\em \hyperlink{classCore}{Core} Data Iterator used to iterate over all objects (Including groups) \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
 \hyperlink{namespacePluginFunctions}{Plugin\+Functions}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{namespacePluginFunctions_a2f27e0790b85b3313cf26daba655fc93}{Plugin\+Functions\+::viewer\+Id} ()
\begin{DoxyCompactList}\small\item\em Return unique viewer id. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a7db0b763935fa0d5933fac6f605b5cba}\label{namespacePluginFunctions_a7db0b763935fa0d5933fac6f605b5cba}} 
\hyperlink{classBaseObject}{Base\+Object} $\ast$\& \hyperlink{namespacePluginFunctions_a7db0b763935fa0d5933fac6f605b5cba}{Plugin\+Functions\+::object\+Root} ()
\begin{DoxyCompactList}\small\item\em Get the root of the object structure. \end{DoxyCompactList}\item 
Q\+String \hyperlink{namespacePluginFunctions_a607e9454fb84500358628ae6b4ddcadc}{Plugin\+Functions\+::get\+Open\+File\+Name} (const Q\+String \&config\+Property, Q\+Widget $\ast$parent, const Q\+String \&caption, const Q\+String \&default\+Dir, const Q\+String \&filter, Q\+String $\ast$selected\+Filter, Q\+File\+Dialog\+::\+Options options)
\item 
Q\+String \hyperlink{namespacePluginFunctions_a9209e9a0bfb573f93997746b0f387890}{Plugin\+Functions\+::get\+Save\+File\+Name} (const Q\+String \&config\+Property, Q\+Widget $\ast$parent, const Q\+String \&caption, const Q\+String \&default\+Dir, const Q\+String \&filter, Q\+String $\ast$selected\+Filter, Q\+File\+Dialog\+::\+Options options, const Q\+String \&default\+Suffix)
\end{DoxyCompactItemize}
\begin{Indent}\textbf{ Active Objects}\par
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{namespacePluginFunctions_a7d412195ecf1c2b6ba9cac4c362978cd}{Plugin\+Functions\+::get\+Picked\+Object} (const size\+\_\+t \+\_\+node\+\_\+idx, \hyperlink{classBaseObjectData}{Base\+Object\+Data} $\ast$\&\+\_\+object)
\begin{DoxyCompactList}\small\item\em Get the picked mesh. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Identifier handling}\par
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{namespacePluginFunctions_a949b8b558e9119de7bf9cb26326fa4e0}{Plugin\+Functions\+::get\+Source\+Identifiers} (std\+::vector$<$ int $>$ \&\+\_\+identifiers)
\begin{DoxyCompactList}\small\item\em Get the identifiers of all objects marked as a source object. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_ab71e4cf2dd51eb0281b2f7b9d243dcb2}{Plugin\+Functions\+::get\+Target\+Identifiers} (std\+::vector$<$ int $>$ \&\+\_\+identifiers)
\begin{DoxyCompactList}\small\item\em Get the identifiers of all objects marked as a target object. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a79c4165f279935b30fe6d3db99ae04d3}{Plugin\+Functions\+::get\+All\+Object\+Identifiers} (std\+::vector$<$ int $>$ \&\+\_\+identifiers)
\begin{DoxyCompactList}\small\item\em Get identifiers of all objects. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_abd08c0d79cb35d559e76c3c3b822ac58}{Plugin\+Functions\+::get\+All\+Meshes} (std\+::vector$<$ int $>$ \&\+\_\+identifiers)
\begin{DoxyCompactList}\small\item\em Get identifiers of all meshes. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a457fae57adecd43d140a3328ee935df3}{Plugin\+Functions\+::get\+Object} (const int \+\_\+identifier, \hyperlink{classBaseObject}{Base\+Object} $\ast$\&\+\_\+object)
\begin{DoxyCompactList}\small\item\em Get the object which has the given identifier. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a14147706f895f469852959e21f29e7fc}{Plugin\+Functions\+::get\+Object} (const int \+\_\+identifier, \hyperlink{classBaseObjectData}{Base\+Object\+Data} $\ast$\&\+\_\+object)
\item 
int \hyperlink{namespacePluginFunctions_a34983e06cbd76bf9e0ff03e5b6c57dae}{Plugin\+Functions\+::get\+Object\+Id} (const Q\+String \&\+\_\+name)
\item 
bool \hyperlink{namespacePluginFunctions_a839512f6451ed80e09d4cc2b1e6324ab}{Plugin\+Functions\+::object\+Exists} (const int \+\_\+identifier)
\begin{DoxyCompactList}\small\item\em Check if an object with this identifier exists. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a5bbfd68dc2841f7e3256d14b716a06ae}\label{namespacePluginFunctions_a5bbfd68dc2841f7e3256d14b716a06ae}} 
int \hyperlink{namespacePluginFunctions_a5bbfd68dc2841f7e3256d14b716a06ae}{Plugin\+Functions\+::object\+Count} ()
\begin{DoxyCompactList}\small\item\em Get the number of available objects. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a1cf8f6cdf2dcb91bbed498d53d2d382c}\label{namespacePluginFunctions_a1cf8f6cdf2dcb91bbed498d53d2d382c}} 
int \hyperlink{namespacePluginFunctions_a1cf8f6cdf2dcb91bbed498d53d2d382c}{Plugin\+Functions\+::target\+Count} ()
\begin{DoxyCompactList}\small\item\em Get the number of target objects. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a3fdc4340584fcb0f039d8c141b2d3de2}\label{namespacePluginFunctions_a3fdc4340584fcb0f039d8c141b2d3de2}} 
int \hyperlink{namespacePluginFunctions_a3fdc4340584fcb0f039d8c141b2d3de2}{Plugin\+Functions\+::source\+Count} ()
\begin{DoxyCompactList}\small\item\em Get the number of source objects. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_aa394f1c74b7eed4a844d2cbc78a010f7}\label{namespacePluginFunctions_aa394f1c74b7eed4a844d2cbc78a010f7}} 
int \hyperlink{namespacePluginFunctions_aa394f1c74b7eed4a844d2cbc78a010f7}{Plugin\+Functions\+::visible\+Count} ()
\begin{DoxyCompactList}\small\item\em Get the number of visible objects. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Examiner handling}\par
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{namespacePluginFunctions_a79838d9a4e7a09b4de2a2e2c043f1a9c}\label{namespacePluginFunctions_a79838d9a4e7a09b4de2a2e2c043f1a9c}} 
int \hyperlink{namespacePluginFunctions_a79838d9a4e7a09b4de2a2e2c043f1a9c}{Plugin\+Functions\+::viewers} ()
\begin{DoxyCompactList}\small\item\em Get the number of viewers. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_abc2e0f7d0ccff47c22e7be8dba85ad74}{Plugin\+Functions\+::disable\+Examiner\+Light\+Handling} ()
\begin{DoxyCompactList}\small\item\em Disable the core light handling. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a878decfdce5d9901deb6c6778ec23ad7}{Plugin\+Functions\+::examiner\+Light\+Handling} ()
\begin{DoxyCompactList}\small\item\em returns if internal light handling is active. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_ab67d722dc9182c4973603519638e98f8}\label{namespacePluginFunctions_ab67d722dc9182c4973603519638e98f8}} 
void \hyperlink{namespacePluginFunctions_ab67d722dc9182c4973603519638e98f8}{Plugin\+Functions\+::set\+Active\+Examiner} (const unsigned int \+\_\+id)
\begin{DoxyCompactList}\small\item\em Set the active id of the examiner which got the last mouse events. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_ac092e03e4f2fd8744c6ea4b721bf8c13}\label{namespacePluginFunctions_ac092e03e4f2fd8744c6ea4b721bf8c13}} 
unsigned int \hyperlink{namespacePluginFunctions_ac092e03e4f2fd8744c6ea4b721bf8c13}{Plugin\+Functions\+::active\+Examiner} ()
\begin{DoxyCompactList}\small\item\em Get the id of the examiner which got the last mouse events. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a6dd99a5f8b221bcbf4fd397ca36da4ec}\label{namespacePluginFunctions_a6dd99a5f8b221bcbf4fd397ca36da4ec}} 
Q\+String \hyperlink{namespacePluginFunctions_a6dd99a5f8b221bcbf4fd397ca36da4ec}{Plugin\+Functions\+::get\+Encoded\+Examiner\+View} ()
\begin{DoxyCompactList}\small\item\em Get the encoded view for the active examiner. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a41304aae7a6a78fe644e1128f74001d2}\label{namespacePluginFunctions_a41304aae7a6a78fe644e1128f74001d2}} 
Q\+String \hyperlink{namespacePluginFunctions_a41304aae7a6a78fe644e1128f74001d2}{Plugin\+Functions\+::get\+Encoded\+Examiner\+View} (int \+\_\+viewer\+Id)
\begin{DoxyCompactList}\small\item\em Get the encoded view for the given. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a470639c87fa0245cd7c880e26f2573a2}\label{namespacePluginFunctions_a470639c87fa0245cd7c880e26f2573a2}} 
void \hyperlink{namespacePluginFunctions_a470639c87fa0245cd7c880e26f2573a2}{Plugin\+Functions\+::set\+Encoded\+Examiner\+View} (Q\+String \+\_\+view)
\begin{DoxyCompactList}\small\item\em Set the encoded view for the active examiner. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_ac507375541025af778dc90d2a75743af}\label{namespacePluginFunctions_ac507375541025af778dc90d2a75743af}} 
void \hyperlink{namespacePluginFunctions_ac507375541025af778dc90d2a75743af}{Plugin\+Functions\+::set\+Encoded\+Examiner\+View} (int \+\_\+viewer\+Id, Q\+String \+\_\+view)
\begin{DoxyCompactList}\small\item\em Set the encoded view for the given. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_a703da9edcb0a6359d8941cf96e10d4ab}{Plugin\+Functions\+::set\+Scene\+Center} (const \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+center, int \+\_\+viewer)
\item 
bool \hyperlink{namespacePluginFunctions_aa407abcd8a862ac0addd816e14ae5766}{Plugin\+Functions\+::scenegraph\+Pick} (\hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Point \&\+\_\+mouse\+Pos, size\+\_\+t \&\+\_\+node\+Idx, size\+\_\+t \&\+\_\+target\+Idx, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+hit\+Point\+Ptr)
\begin{DoxyCompactList}\small\item\em Execute picking operation on scenegraph. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_af60ffc87e1f6c78b05adb88bca8eaeb4}{Plugin\+Functions\+::scenegraph\+Pick} (const unsigned int \+\_\+examiner,\hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Point \&\+\_\+mouse\+Pos, size\+\_\+t \&\+\_\+node\+Idx, size\+\_\+t \&\+\_\+target\+Idx, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+hit\+Point\+Ptr)
\begin{DoxyCompactList}\small\item\em Execute picking operation on scenegraph. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a64840ab575264efa056ad61e4da7503e}{Plugin\+Functions\+::scenegraph\+Pick} (const unsigned int \+\_\+examiner,\hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Point \&\+\_\+mouse\+Pos, \hyperlink{classBaseObjectData}{Base\+Object\+Data} $\ast$\&\+\_\+object, size\+\_\+t \&\+\_\+target\+Idx, const bool \+\_\+refine,\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+hit\+Point\+Ptr)
\begin{DoxyCompactList}\small\item\em Execute picking operation on scenegraph and return object. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a8b058350a2c62c0d93947e7715ba2653}{Plugin\+Functions\+::scenegraph\+Pick} (\hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Point \&\+\_\+mouse\+Pos, \hyperlink{classBaseObjectData}{Base\+Object\+Data} $\ast$\&\+\_\+object, size\+\_\+t \&\+\_\+target\+Idx, const bool \+\_\+refine, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+hit\+Point\+Ptr)
\begin{DoxyCompactList}\small\item\em Execute picking operation on scenegraph and return object. \end{DoxyCompactList}\item 
bool \hyperlink{namespacePluginFunctions_a37c0e4a8318291080b3884248ae4ecca}{Plugin\+Functions\+::scenegraph\+Region\+Pick} (\hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Region \&\+\_\+region, Q\+List$<$ Q\+Pair$<$ size\+\_\+t, size\+\_\+t $>$ $>$ \&\+\_\+list, Q\+Vector$<$ float $>$ $\ast$\+\_\+depths, Q\+Vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ $\ast$\+\_\+points)
\item 
bool \hyperlink{namespacePluginFunctions_ad5d7a9d07c69e521927cf2115ce8031f}{Plugin\+Functions\+::scenegraph\+Region\+Pick} (const unsigned int \+\_\+examiner, \hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{A\+C\+G\+::\+Scene\+Graph\+::\+Pick\+Target} \+\_\+pick\+Target, const Q\+Region \&\+\_\+region, Q\+List$<$ Q\+Pair$<$ size\+\_\+t, size\+\_\+t $>$ $>$ \&\+\_\+list, Q\+Vector$<$ float $>$ $\ast$\+\_\+depths, Q\+Vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ $\ast$\+\_\+points)
\item 
void \hyperlink{namespacePluginFunctions_a95bf07301b5f4e367e9d6909acbaf7fd}{Plugin\+Functions\+::traverse} (\hyperlink{classACG_1_1SceneGraph_1_1MouseEventAction}{A\+C\+G\+::\+Scene\+Graph\+::\+Mouse\+Event\+Action} \&\+\_\+action)
\item 
\mbox{\Hypertarget{namespacePluginFunctions_a6126bc44ec7c4091f0b87f6ca87e7c77}\label{namespacePluginFunctions_a6126bc44ec7c4091f0b87f6ca87e7c77}} 
const std\+::string \hyperlink{namespacePluginFunctions_a6126bc44ec7c4091f0b87f6ca87e7c77}{Plugin\+Functions\+::pick\+Mode} ()
\begin{DoxyCompactList}\small\item\em Get the current Picking mode. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a67aa98443a08c667d52d4c62440deb00}\label{namespacePluginFunctions_a67aa98443a08c667d52d4c62440deb00}} 
void \hyperlink{namespacePluginFunctions_a67aa98443a08c667d52d4c62440deb00}{Plugin\+Functions\+::pick\+Mode} (const std\+::string \&\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Set the current Picking mode for all examiner widgets. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a074bac06a5e27d760728aed1b2b3f0ee}\label{namespacePluginFunctions_a074bac06a5e27d760728aed1b2b3f0ee}} 
void \hyperlink{namespacePluginFunctions_a074bac06a5e27d760728aed1b2b3f0ee}{Plugin\+Functions\+::get\+Current\+View\+Image} (Q\+Image \&\+\_\+image)
\begin{DoxyCompactList}\small\item\em Returns a Q\+Image of the current View. \end{DoxyCompactList}\item 
\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node} $\ast$ \hyperlink{namespacePluginFunctions_adb9160f9b0e24053d577b42efe1d37d4}{Plugin\+Functions\+::get\+Scene\+Graph\+Root\+Node} ()
\begin{DoxyCompactList}\small\item\em get scenegraph root node \end{DoxyCompactList}\item 
\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node} $\ast$ \hyperlink{namespacePluginFunctions_a46596260d8ff9904342ff483f9c19591}{Plugin\+Functions\+::get\+Root\+Node} ()
\begin{DoxyCompactList}\small\item\em Get the root node for data objects. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_a2458aef543b14b2ac0b06c50d168414e}{Plugin\+Functions\+::add\+Global\+Node} (\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node} $\ast$\+\_\+node)
\begin{DoxyCompactList}\small\item\em Add a global node. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_ac7e4e188a1d6caa408be7ae7ccaaccd1}{Plugin\+Functions\+::add\+Global\+Status\+Node} (\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node} $\ast$\+\_\+node)
\begin{DoxyCompactList}\small\item\em Adds a global status node. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_a205689202437118e51dc0f47ef07887b}{Plugin\+Functions\+::add\+Object\+Rendering\+Node} (\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node} $\ast$\+\_\+node)
\begin{DoxyCompactList}\small\item\em Add scenegraph node modifing object rendering. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a10625157f033ef4f8e3c73554450e1b0}\label{namespacePluginFunctions_a10625157f033ef4f8e3c73554450e1b0}} 
void \hyperlink{namespacePluginFunctions_a10625157f033ef4f8e3c73554450e1b0}{Plugin\+Functions\+::action\+Mode} (\hyperlink{ViewerProperties_8hh_a23df76c69888d15a460c61ef853567d8}{Viewer\+::\+Action\+Mode} \+\_\+mode)
\begin{DoxyCompactList}\small\item\em Set the current Action Mode (\hyperlink{classPickMode}{Pick\+Mode},Examine\+Mode,...) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_aa7ad2d5b69ca3cc449a3e702fb4e5d4f}\label{namespacePluginFunctions_aa7ad2d5b69ca3cc449a3e702fb4e5d4f}} 
\hyperlink{ViewerProperties_8hh_a23df76c69888d15a460c61ef853567d8}{Viewer\+::\+Action\+Mode} \hyperlink{namespacePluginFunctions_aa7ad2d5b69ca3cc449a3e702fb4e5d4f}{Plugin\+Functions\+::action\+Mode} ()
\begin{DoxyCompactList}\small\item\em Get the current Action mode. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a3106aeb8d618eed1a9b51ff0ee513987}\label{namespacePluginFunctions_a3106aeb8d618eed1a9b51ff0ee513987}} 
void \hyperlink{namespacePluginFunctions_a3106aeb8d618eed1a9b51ff0ee513987}{Plugin\+Functions\+::share\+G\+L\+Widget} (O\+F\+G\+L\+Widget $\ast$\+\_\+widget)
\begin{DoxyCompactList}\small\item\em Sets the main Q\+G\+L\+Widget for gl data sharing. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a564b62e75bbfd5e5e9fa1d24e0ef748e}\label{namespacePluginFunctions_a564b62e75bbfd5e5e9fa1d24e0ef748e}} 
O\+F\+G\+L\+Widget $\ast$ \hyperlink{namespacePluginFunctions_a564b62e75bbfd5e5e9fa1d24e0ef748e}{Plugin\+Functions\+::share\+G\+L\+Widget} ()
\begin{DoxyCompactList}\small\item\em Returns the main Q\+G\+L\+Widget for gl data sharing. \end{DoxyCompactList}\item 
\hyperlink{GlobalDefines_8hh_a808e08638be3cba36e36759e5b150de0}{D\+L\+L\+E\+X\+P\+O\+RT} void \hyperlink{namespacePluginFunctions_abbc156ec199665bf2ac229741e8ca586}{Plugin\+Functions\+::allow\+Rotation} (bool \+\_\+mode)
\item 
Q\+Point \hyperlink{namespacePluginFunctions_a499ada11f6b60e736f314d03395dd808}{Plugin\+Functions\+::map\+To\+Global} (const Q\+Point \+\_\+point)
\begin{DoxyCompactList}\small\item\em Map coordinates of GL Widget to global coordinates. \end{DoxyCompactList}\item 
Q\+Point \hyperlink{namespacePluginFunctions_a6da01f4b28ec6cca2a6699cd7c93f244}{Plugin\+Functions\+::map\+To\+Local} (const Q\+Point \+\_\+point)
\begin{DoxyCompactList}\small\item\em Map global coordinates to GL Widget local coordinates. \end{DoxyCompactList}\item 
void \hyperlink{namespacePluginFunctions_afbf1bfca962f64fea7cda65a1f042a7a}{Plugin\+Functions\+::set\+View\+Object\+Marker} (\hyperlink{classViewObjectMarker}{View\+Object\+Marker} $\ast$\+\_\+marker)
\item 
void \hyperlink{namespacePluginFunctions_af344404cc65c340cfda8f47047c522fb}{Plugin\+Functions\+::set\+Default\+View\+Object\+Marker} (\hyperlink{classViewObjectMarker}{View\+Object\+Marker} $\ast$\+\_\+marker)
\item 
Q\+String\+List \hyperlink{namespacePluginFunctions_a6a12df2338bbcaea679ac9fab9f2b586}{Plugin\+Functions\+::collect\+Object\+Comments} (bool visible\+Only, bool targeted\+Only)
\item 
Q\+String\+List \hyperlink{namespacePluginFunctions_a3f120a5356e5ff6629f5c81f2cac6cd4}{Plugin\+Functions\+::collect\+Object\+Materials} (bool visible\+Only, bool targeted\+Only)
\item 
\mbox{\Hypertarget{namespacePluginFunctions_a80c868a457a8e961393ee18ca5430ebf}\label{namespacePluginFunctions_a80c868a457a8e961393ee18ca5430ebf}} 
\hyperlink{classViewObjectMarker}{View\+Object\+Marker} $\ast$ \hyperlink{namespacePluginFunctions_a80c868a457a8e961393ee18ca5430ebf}{Plugin\+Functions\+::default\+View\+Object\+Marker} ()
\begin{DoxyCompactList}\small\item\em Get the default \hyperlink{classViewObjectMarker}{View\+Object\+Marker}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Do never use!!}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{namespacePluginFunctions_a500a4c2660d974cc5d9ab8ea0604a5ff}{Plugin\+Functions\+::set\+Data\+Root} (\hyperlink{classBaseObject}{Base\+Object} $\ast$\+\_\+root)
\end{DoxyCompactItemize}
\end{Indent}
\begin{Indent}\textbf{ Getting data from objects and casting between them}\par
\begin{DoxyCompactItemize}
\item 
\hyperlink{classBaseObjectData}{Base\+Object\+Data} $\ast$ \hyperlink{namespacePluginFunctions_affb238a514f9754ca2a3680ccb4b59a4}{Plugin\+Functions\+::base\+Object\+Data} (\hyperlink{classBaseObject}{Base\+Object} $\ast$\+\_\+object)
\begin{DoxyCompactList}\small\item\em Cast an \hyperlink{classBaseObject}{Base\+Object} to a \hyperlink{classBaseObjectData}{Base\+Object\+Data} if possible. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Iterators}
\begin{DoxyCompactItemize}
\item 
typedef Q\+String\+List \hyperlink{namespacePluginFunctions_a9eae8faadd978364c97a06f639ec0ccc}{Plugin\+Functions\+::\+Iterator\+Restriction}
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
const Q\+String\+List \hyperlink{namespacePluginFunctions_aff89407cfc7a2f18a059f6cff7d4edbb}{Plugin\+Functions\+::\+A\+L\+L\+\_\+\+O\+B\+J\+E\+C\+TS}
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
const Q\+String\+List \hyperlink{namespacePluginFunctions_ae60d693ef9114d80221eea2454195526}{Plugin\+Functions\+::\+T\+A\+R\+G\+E\+T\+\_\+\+O\+B\+J\+E\+C\+TS} (\char`\"{}target\char`\"{})
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
const Q\+String\+List \hyperlink{namespacePluginFunctions_a997c364a51707ba883ee346bc38bcea4}{Plugin\+Functions\+::\+S\+O\+U\+R\+C\+E\+\_\+\+O\+B\+J\+E\+C\+TS} (\char`\"{}source\char`\"{})
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
Object\+Reference\+Range \hyperlink{namespacePluginFunctions_a5aa4451f903755f489d2c2a62f9a4f93}{Plugin\+Functions\+::object\+References} (Iterator\+Restriction \+\_\+restriction=A\+L\+L\+\_\+\+O\+B\+J\+E\+C\+TS, \hyperlink{classDataType}{Data\+Type} \+\_\+data\+Type=\hyperlink{DataTypes_8hh_a87446416192751e622bd4693a4339419}{D\+A\+T\+A\+\_\+\+A\+LL})
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
Object\+Range \hyperlink{namespacePluginFunctions_af9c0699993b85aa9593dc03b23369d33}{Plugin\+Functions\+::objects} (Iterator\+Restriction \+\_\+restriction=A\+L\+L\+\_\+\+O\+B\+J\+E\+C\+TS, \hyperlink{classDataType}{Data\+Type} \+\_\+data\+Type=\hyperlink{DataTypes_8hh_a87446416192751e622bd4693a4339419}{D\+A\+T\+A\+\_\+\+A\+LL})
\begin{DoxyCompactList}\small\item\em Iterable object range. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a25c8015c612b1aaf3a840ca072ce68ca}\label{namespacePluginFunctions_a25c8015c612b1aaf3a840ca072ce68ca}} 
\hyperlink{GlobalDefines_8hh_a808e08638be3cba36e36759e5b150de0}{D\+L\+L\+E\+X\+P\+O\+RT} Object\+Iterator \hyperlink{namespacePluginFunctions_a25c8015c612b1aaf3a840ca072ce68ca}{Plugin\+Functions\+::objects\+End} ()
\begin{DoxyCompactList}\small\item\em Return Iterator to Object End. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{namespacePluginFunctions_a0170e02e7bd4ef07a4b3718d82ef4978}\label{namespacePluginFunctions_a0170e02e7bd4ef07a4b3718d82ef4978}} 
\hyperlink{GlobalDefines_8hh_a808e08638be3cba36e36759e5b150de0}{D\+L\+L\+E\+X\+P\+O\+RT} Base\+Object\+Iterator \hyperlink{namespacePluginFunctions_a0170e02e7bd4ef07a4b3718d82ef4978}{Plugin\+Functions\+::base\+Objects\+End} ()
\begin{DoxyCompactList}\small\item\em Return Iterator to Object End. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
This file contains functions which can be used by plugins to access data in the framework.

This file contains functions to setup the internal structures for \hyperlink{namespacePluginFunctions}{Plugin\+Functions}. Dont Use these Functions in your Plugins! 