\hypertarget{a10688}{}\section{Topology\+Plugin Class Reference}
\label{a10688}\index{Topology\+Plugin@{Topology\+Plugin}}
Inheritance diagram for Topology\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=9.000000cm]{a10688}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a10688_a2b02490f19e2a5ffed1497d2f0a535c9}\label{a10688_a2b02490f19e2a5ffed1497d2f0a535c9}} 
Q\+String {\bfseries version} ()
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a10688_a95d9a51f64261b9900c415cd21e5c23a}\label{a10688_a95d9a51f64261b9900c415cd21e5c23a}} 
void {\bfseries update\+View} ()
\item 
\mbox{\Hypertarget{a10688_ac15719b46ceffb6636996b5e5173960b}\label{a10688_ac15719b46ceffb6636996b5e5173960b}} 
void {\bfseries updated\+Object} (int \+\_\+id, const \hyperlink{a07096}{Update\+Type} \&\+\_\+type)
\item 
\mbox{\Hypertarget{a10688_a350348bade778c923c19a3730d08b67d}\label{a10688_a350348bade778c923c19a3730d08b67d}} 
void {\bfseries add\+Hidden\+Pick\+Mode} (const std\+::string \&\+\_\+mode)
\item 
\mbox{\Hypertarget{a10688_af43c887f056b76f2a66a01adebfb413b}\label{a10688_af43c887f056b76f2a66a01adebfb413b}} 
void {\bfseries create\+Backup} (int \+\_\+objectid, Q\+String \+\_\+name, \hyperlink{a07096}{Update\+Type} \+\_\+type=\hyperlink{a06166_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+LL})
\item 
\mbox{\Hypertarget{a10688_a19d4bed01a68349513fd63a02271e5c4}\label{a10688_a19d4bed01a68349513fd63a02271e5c4}} 
void {\bfseries log} (\hyperlink{a00035_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{a10688_ae71da51328f314ebc1f4781faaddafd6}\label{a10688_ae71da51328f314ebc1f4781faaddafd6}} 
void {\bfseries log} (Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{a10688_a426e1c7654e2d90db6f4d71e6804c0f0}\label{a10688_a426e1c7654e2d90db6f4d71e6804c0f0}} 
void {\bfseries add\+Toolbar} (Q\+Tool\+Bar $\ast$\+\_\+toolbar)
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a10688_a65eef9da716f912ea2144f0844df56b3}\label{a10688_a65eef9da716f912ea2144f0844df56b3}} 
\hyperlink{a10688_a65eef9da716f912ea2144f0844df56b3}{Topology\+Plugin} ()
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a10688_aeed290a5a92481d5cdf6d0772d3d3cdc}\label{a10688_aeed290a5a92481d5cdf6d0772d3d3cdc}} 
\hyperlink{a10688_aeed290a5a92481d5cdf6d0772d3d3cdc}{$\sim$\+Topology\+Plugin} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a10688_a69e01d6d670a4988375fe41ceb7f267c}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a10688_ad788c35cf3b8dd71a3be5ae5487a1d0c}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a10688_a9b0bebff02d52d6dc3a0982dc17bb448}{plugins\+Initialized} ()
\begin{DoxyCompactList}\small\item\em initialize the Plugin \end{DoxyCompactList}\item 
void \hyperlink{a10688_a6ef9c2195f20773af418e025986826bd}{slot\+Pick\+Mode\+Changed} (const std\+::string \&\+\_\+mode)
\begin{DoxyCompactList}\small\item\em Toggle actions when the \hyperlink{a09852}{Pick\+Mode} changes. \end{DoxyCompactList}\item 
void \hyperlink{a10688_a13a80e186ea341520cc95f2736cbe82c}{slot\+Mouse\+Event} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em this is called when a mouse event occurred \end{DoxyCompactList}\item 
void \hyperlink{a10688_a8f226d0800e262e31c1b9ba26a3c0b11}{tool\+Bar\+Triggered} (Q\+Action $\ast$\+\_\+action)
\begin{DoxyCompactList}\small\item\em called when an action on the toolbar was triggered \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a10688_a97ec61906c8cf414dced2c9553ec089c}{clear\+Add\+Face\+Vertices} ()
\begin{DoxyCompactList}\small\item\em clear the add face vector \end{DoxyCompactList}\item 
void \hyperlink{a10688_ae808684d6fb48506b6cf40eed360f77d}{add\+\_\+face} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Add a face. \end{DoxyCompactList}\item 
void \hyperlink{a10688_a72e30cff424fab73626e9f501ee6d51f}{split\+\_\+face} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Split a face at the current hit point. \end{DoxyCompactList}\item 
void \hyperlink{a10688_abf333aafbad48beb1a1ec8e96ce4c819}{delete\+\_\+face} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Delete a face at the current hit point. \end{DoxyCompactList}\item 
void \hyperlink{a10688_a09fd5010157ea7f9b1be2643095b5790}{flip\+\_\+edge} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Flip edge. \end{DoxyCompactList}\item 
void \hyperlink{a10688_a23f9dab85a86d44342990f092154db95}{collapse\+\_\+edge} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Collapse edge. \end{DoxyCompactList}\item 
void \hyperlink{a10688_a2432809b5b8de18de8656725b05b29be}{split\+\_\+edge} (Q\+Mouse\+Event $\ast$\+\_\+event)
\begin{DoxyCompactList}\small\item\em Split Edge. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a10688_acd614bcff2328371892c2c311336b918}\label{a10688_acd614bcff2328371892c2c311336b918}} 
std\+::vector$<$ std\+::pair$<$ int, int $>$ $>$ {\bfseries add\+Face\+Vertices\+\_\+}
\item 
\mbox{\Hypertarget{a10688_a2e016348c4498381c596fd581c4e88b7}\label{a10688_a2e016348c4498381c596fd581c4e88b7}} 
Q\+Tool\+Bar $\ast$ {\bfseries toolbar\+\_\+}
\item 
\mbox{\Hypertarget{a10688_ae00c6ac727f13c197d6cc509cfb8caf2}\label{a10688_ae00c6ac727f13c197d6cc509cfb8caf2}} 
Q\+Action $\ast$ {\bfseries edge\+Flip\+Action\+\_\+}
\item 
\mbox{\Hypertarget{a10688_ab70f508bfedd048ff659346db7556f0d}\label{a10688_ab70f508bfedd048ff659346db7556f0d}} 
Q\+Action $\ast$ {\bfseries edge\+Split\+Action\+\_\+}
\item 
\mbox{\Hypertarget{a10688_ab14b3ae81e1449e9b507118b5693a5a1}\label{a10688_ab14b3ae81e1449e9b507118b5693a5a1}} 
Q\+Action $\ast$ {\bfseries edge\+Collapse\+Action\+\_\+}
\item 
\mbox{\Hypertarget{a10688_a955273a01bc0d3884218e34add702e6f}\label{a10688_a955273a01bc0d3884218e34add702e6f}} 
Q\+Action $\ast$ {\bfseries face\+Add\+Action\+\_\+}
\item 
\mbox{\Hypertarget{a10688_a0901dd34e35e2456ac4217f7a3a2ee65}\label{a10688_a0901dd34e35e2456ac4217f7a3a2ee65}} 
Q\+Action $\ast$ {\bfseries face\+Delete\+Action\+\_\+}
\item 
\mbox{\Hypertarget{a10688_a59bd8cc862a3e0837dfca8cc8a75ba55}\label{a10688_a59bd8cc862a3e0837dfca8cc8a75ba55}} 
Q\+Action $\ast$ {\bfseries face\+Split\+Action\+\_\+}
\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 58 of file Topology\+Plugin.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a10688_ae808684d6fb48506b6cf40eed360f77d}\label{a10688_ae808684d6fb48506b6cf40eed360f77d}} 
\index{Topology\+Plugin@{Topology\+Plugin}!add\+\_\+face@{add\+\_\+face}}
\index{add\+\_\+face@{add\+\_\+face}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{add\+\_\+face()}{add\_face()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::add\+\_\+face (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Add a face. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where one of the vertices is picked \\
\hline
\end{DoxyParams}
\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{a06164__todo000037}{Todo}]\+: Support adding faces between objects ( and merging them into one ) \end{DoxyRefDesc}


\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{a06164__todo000038}{Todo}]\+: Support adding faces between objects ( and merging them into one ) \end{DoxyRefDesc}


Definition at line 236 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a97ec61906c8cf414dced2c9553ec089c}\label{a10688_a97ec61906c8cf414dced2c9553ec089c}} 
\index{Topology\+Plugin@{Topology\+Plugin}!clear\+Add\+Face\+Vertices@{clear\+Add\+Face\+Vertices}}
\index{clear\+Add\+Face\+Vertices@{clear\+Add\+Face\+Vertices}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{clear\+Add\+Face\+Vertices()}{clearAddFaceVertices()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::clear\+Add\+Face\+Vertices (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



clear the add face vector 

Deselect the vertices from Add\+Face mode.

Definition at line 200 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a23f9dab85a86d44342990f092154db95}\label{a10688_a23f9dab85a86d44342990f092154db95}} 
\index{Topology\+Plugin@{Topology\+Plugin}!collapse\+\_\+edge@{collapse\+\_\+edge}}
\index{collapse\+\_\+edge@{collapse\+\_\+edge}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{collapse\+\_\+edge()}{collapse\_edge()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::collapse\+\_\+edge (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Collapse edge. 

Collapse an edge at the given position.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where the edge is picked \\
\hline
\end{DoxyParams}


Definition at line 649 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_abf333aafbad48beb1a1ec8e96ce4c819}\label{a10688_abf333aafbad48beb1a1ec8e96ce4c819}} 
\index{Topology\+Plugin@{Topology\+Plugin}!delete\+\_\+face@{delete\+\_\+face}}
\index{delete\+\_\+face@{delete\+\_\+face}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{delete\+\_\+face()}{delete\_face()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::delete\+\_\+face (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Delete a face at the current hit point. 

Delete a face at the given position.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where the face is picked \\
\hline
\end{DoxyParams}


Definition at line 535 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_ad788c35cf3b8dd71a3be5ae5487a1d0c}\label{a10688_ad788c35cf3b8dd71a3be5ae5487a1d0c}} 
\index{Topology\+Plugin@{Topology\+Plugin}!description@{description}}
\index{description@{description}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{description()}{description()}}
{\footnotesize\ttfamily Q\+String Topology\+Plugin\+::description (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

Implements \hyperlink{a06872_a43f0d3612695b53c848c14f48fea9a7a}{Base\+Interface}.



Definition at line 115 of file Topology\+Plugin.\+hh.

\mbox{\Hypertarget{a10688_a09fd5010157ea7f9b1be2643095b5790}\label{a10688_a09fd5010157ea7f9b1be2643095b5790}} 
\index{Topology\+Plugin@{Topology\+Plugin}!flip\+\_\+edge@{flip\+\_\+edge}}
\index{flip\+\_\+edge@{flip\+\_\+edge}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{flip\+\_\+edge()}{flip\_edge()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::flip\+\_\+edge (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Flip edge. 

Flip an edge at the given position.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where the edge is picked \\
\hline
\end{DoxyParams}


Definition at line 584 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a69e01d6d670a4988375fe41ceb7f267c}\label{a10688_a69e01d6d670a4988375fe41ceb7f267c}} 
\index{Topology\+Plugin@{Topology\+Plugin}!name@{name}}
\index{name@{name}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{name()}{name()}}
{\footnotesize\ttfamily Q\+String Topology\+Plugin\+::name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a name for the plugin. 

This Function has to return the name of the plugin. 

Implements \hyperlink{a06872_a2b351aa6ef0eb368bce735e243235958}{Base\+Interface}.



Definition at line 114 of file Topology\+Plugin.\+hh.

\mbox{\Hypertarget{a10688_a9b0bebff02d52d6dc3a0982dc17bb448}\label{a10688_a9b0bebff02d52d6dc3a0982dc17bb448}} 
\index{Topology\+Plugin@{Topology\+Plugin}!plugins\+Initialized@{plugins\+Initialized}}
\index{plugins\+Initialized@{plugins\+Initialized}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{plugins\+Initialized}{pluginsInitialized}}
{\footnotesize\ttfamily void Topology\+Plugin\+::plugins\+Initialized (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



initialize the Plugin 



Definition at line 73 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a13a80e186ea341520cc95f2736cbe82c}\label{a10688_a13a80e186ea341520cc95f2736cbe82c}} 
\index{Topology\+Plugin@{Topology\+Plugin}!slot\+Mouse\+Event@{slot\+Mouse\+Event}}
\index{slot\+Mouse\+Event@{slot\+Mouse\+Event}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Mouse\+Event}{slotMouseEvent}}
{\footnotesize\ttfamily void Topology\+Plugin\+::slot\+Mouse\+Event (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



this is called when a mouse event occurred 


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & the event that occurred \\
\hline
\end{DoxyParams}


Definition at line 182 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a6ef9c2195f20773af418e025986826bd}\label{a10688_a6ef9c2195f20773af418e025986826bd}} 
\index{Topology\+Plugin@{Topology\+Plugin}!slot\+Pick\+Mode\+Changed@{slot\+Pick\+Mode\+Changed}}
\index{slot\+Pick\+Mode\+Changed@{slot\+Pick\+Mode\+Changed}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Pick\+Mode\+Changed}{slotPickModeChanged}}
{\footnotesize\ttfamily void Topology\+Plugin\+::slot\+Pick\+Mode\+Changed (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{\+\_\+mode }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



Toggle actions when the \hyperlink{a09852}{Pick\+Mode} changes. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+mode} & the new \hyperlink{a09852}{Pick\+Mode} \\
\hline
\end{DoxyParams}


Definition at line 166 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a2432809b5b8de18de8656725b05b29be}\label{a10688_a2432809b5b8de18de8656725b05b29be}} 
\index{Topology\+Plugin@{Topology\+Plugin}!split\+\_\+edge@{split\+\_\+edge}}
\index{split\+\_\+edge@{split\+\_\+edge}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{split\+\_\+edge()}{split\_edge()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::split\+\_\+edge (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Split Edge. 

Split an edge at the given position.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where the edge is picked \\
\hline
\end{DoxyParams}


Definition at line 762 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a72e30cff424fab73626e9f501ee6d51f}\label{a10688_a72e30cff424fab73626e9f501ee6d51f}} 
\index{Topology\+Plugin@{Topology\+Plugin}!split\+\_\+face@{split\+\_\+face}}
\index{split\+\_\+face@{split\+\_\+face}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{split\+\_\+face()}{split\_face()}}
{\footnotesize\ttfamily void Topology\+Plugin\+::split\+\_\+face (\begin{DoxyParamCaption}\item[{Q\+Mouse\+Event $\ast$}]{\+\_\+event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Split a face at the current hit point. 

Split a face at the given point.


\begin{DoxyParams}{Parameters}
{\em \+\_\+event} & mouse position where the face is picked \\
\hline
\end{DoxyParams}


Definition at line 476 of file Topology\+Plugin.\+cc.

\mbox{\Hypertarget{a10688_a8f226d0800e262e31c1b9ba26a3c0b11}\label{a10688_a8f226d0800e262e31c1b9ba26a3c0b11}} 
\index{Topology\+Plugin@{Topology\+Plugin}!tool\+Bar\+Triggered@{tool\+Bar\+Triggered}}
\index{tool\+Bar\+Triggered@{tool\+Bar\+Triggered}!Topology\+Plugin@{Topology\+Plugin}}
\subsubsection{\texorpdfstring{tool\+Bar\+Triggered}{toolBarTriggered}}
{\footnotesize\ttfamily void Topology\+Plugin\+::tool\+Bar\+Triggered (\begin{DoxyParamCaption}\item[{Q\+Action $\ast$}]{\+\_\+action }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



called when an action on the toolbar was triggered 

Toolbar action was triggered.


\begin{DoxyParams}{Parameters}
{\em \+\_\+action} & the action that was triggered \\
\hline
\end{DoxyParams}


Definition at line 142 of file Topology\+Plugin.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Plugin-\/\+Topology/Topology\+Plugin.\+hh\item 
Plugin-\/\+Topology/Topology\+Plugin.\+cc\end{DoxyCompactItemize}
