\hypertarget{a01296}{\section{Texture\+Data Class Reference}
\label{a01296}\index{Texture\+Data@{Texture\+Data}}
}
Inheritance diagram for Texture\+Data\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a01296}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01296_a3ddb180b141d41ffdc5ebd73df3c6c10}{\hyperlink{a01296_a3ddb180b141d41ffdc5ebd73df3c6c10}{Texture\+Data} ()}\label{a01296_a3ddb180b141d41ffdc5ebd73df3c6c10}

\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
\hypertarget{a01296_ab5ba8c4b65adf5f919450fbd8374001e}{\hyperlink{a01296_ab5ba8c4b65adf5f919450fbd8374001e}{$\sim$\+Texture\+Data} ()}\label{a01296_ab5ba8c4b65adf5f919450fbd8374001e}

\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
virtual \hyperlink{a00953}{Per\+Object\+Data} $\ast$ \hyperlink{a01296_a7dc89c65832fef870f1d4b5581f20afa}{copy\+Per\+Object\+Data} ()
\begin{DoxyCompactList}\small\item\em Copy Function. \end{DoxyCompactList}\item 
bool \hyperlink{a01296_ac1c2193b143462da8a87af07f927e37d}{texture\+Exists} (Q\+String \+\_\+texture\+Name)
\begin{DoxyCompactList}\small\item\em Check if a texture exists. \end{DoxyCompactList}\item 
bool \hyperlink{a01296_a2483f9a8a9e3dabc5896f86098477f93}{is\+Enabled} (Q\+String \+\_\+texture\+Name)
\begin{DoxyCompactList}\small\item\em Check if a texture is enabled. \end{DoxyCompactList}\item 
bool \hyperlink{a01296_aeada567ee30b99a91573390051a27cca}{enable\+Texture} (Q\+String \+\_\+texture\+Name, bool \+\_\+exclusive=false)
\begin{DoxyCompactList}\small\item\em Enable a given texture. \end{DoxyCompactList}\item 
void \hyperlink{a01296_acd1c41fb723fb40c65be7f35da946d7d}{disable\+Texture} (Q\+String \+\_\+texture\+Name)
\begin{DoxyCompactList}\small\item\em Disable a given texture. \end{DoxyCompactList}\item 
int \hyperlink{a01296_aac13701a4c33360c9c63f4404b333710}{add\+Texture} (Q\+String \+\_\+texture\+Name, Q\+String \+\_\+filename, uint \+\_\+dimension, G\+Luint \+\_\+gl\+Name)
\begin{DoxyCompactList}\small\item\em Add a \hyperlink{a01281}{Texture}. \end{DoxyCompactList}\item 
\hypertarget{a01296_a372315f14df4287ec10e1db3a8b4abc8}{int \hyperlink{a01296_a372315f14df4287ec10e1db3a8b4abc8}{add\+Texture} (\hyperlink{a01281}{Texture} \+\_\+texture, G\+Luint \+\_\+gl\+Name)}\label{a01296_a372315f14df4287ec10e1db3a8b4abc8}

\begin{DoxyCompactList}\small\item\em Add a \hyperlink{a01281}{Texture} ( Based on an existing specification ) \end{DoxyCompactList}\item 
\hypertarget{a01296_ac3b456146d565ca8399a1e94b17a45bd}{bool \hyperlink{a01296_ac3b456146d565ca8399a1e94b17a45bd}{add\+Multi\+Texture} (Q\+String \+\_\+texture\+Name)}\label{a01296_ac3b456146d565ca8399a1e94b17a45bd}

\begin{DoxyCompactList}\small\item\em Adds a new multi\+Texture ( This texture will only contain a list of enabled textures for multitexturing ) \end{DoxyCompactList}\item 
\hypertarget{a01296_a8b87da5093eca82044ccc257a55ffa28}{bool \hyperlink{a01296_a8b87da5093eca82044ccc257a55ffa28}{set\+Image} (Q\+String \+\_\+texture\+Name, int \+\_\+id)}\label{a01296_a8b87da5093eca82044ccc257a55ffa28}

\begin{DoxyCompactList}\small\item\em Stores the given image in the texture information. \end{DoxyCompactList}\item 
\hyperlink{a01281}{Texture} \& \hyperlink{a01296_a2a9d3602a40b81b11a455905a0eb637a}{texture} (Q\+String \+\_\+texture\+Name)
\begin{DoxyCompactList}\small\item\em Get the texture object. \end{DoxyCompactList}\item 
std\+::vector$<$ \hyperlink{a01281}{Texture} $>$ \& \hyperlink{a01296_a53185dd83b36743c694c70e08814adb0}{textures} ()
\begin{DoxyCompactList}\small\item\em Get reference to the texture vector. \end{DoxyCompactList}\item 
std\+::map$<$ int, G\+Luint $>$ $\ast$ \hyperlink{a01296_aa0f7ee0f32c058d8c6717a670c434529}{texture\+Map} ()
\begin{DoxyCompactList}\small\item\em Get pointer to the texture\+Map. \end{DoxyCompactList}\item 
std\+::map$<$ int, std\+::string $>$ $\ast$ \hyperlink{a01296_a3985f082d83952cb1ec6ffc55aad3981}{property\+Map} ()
\begin{DoxyCompactList}\small\item\em Get pointer to the property\+Map. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{a01296_abb35b79674eaef3564fe61d0f0a0c25b}{get\+Texture\+Index} (Q\+String \+\_\+texture\+Name)
\begin{DoxyCompactList}\small\item\em Get the index of a given texture. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01296_ad93c174cde75ff792d6cc6c7698304d1}{std\+::map$<$ int, G\+Luint $>$ {\bfseries texture\+Map\+\_\+}}\label{a01296_ad93c174cde75ff792d6cc6c7698304d1}

\item 
\hypertarget{a01296_a0d6675b69cfc0c28cb28d68e20f61bdc}{std\+::map$<$ int, std\+::string $>$ {\bfseries property\+Map\+\_\+}}\label{a01296_a0d6675b69cfc0c28cb28d68e20f61bdc}

\item 
\hypertarget{a01296_acc9e8af841fd4777ba4be99a0cc4c943}{int \hyperlink{a01296_acc9e8af841fd4777ba4be99a0cc4c943}{next\+Internal\+I\+D\+\_\+}}\label{a01296_acc9e8af841fd4777ba4be99a0cc4c943}

\begin{DoxyCompactList}\small\item\em internal id for the next texture \end{DoxyCompactList}\item 
\hypertarget{a01296_affcd6829f25412e4d8fc4a2c4501f44b}{std\+::vector$<$ \hyperlink{a01281}{Texture} $>$ \hyperlink{a01296_affcd6829f25412e4d8fc4a2c4501f44b}{textures\+\_\+}}\label{a01296_affcd6829f25412e4d8fc4a2c4501f44b}

\begin{DoxyCompactList}\small\item\em vector containing all textures of an object \end{DoxyCompactList}\item 
\hypertarget{a01296_a4ab7565a04d6a7e2d106dea1fffc35cd}{\hyperlink{a01281}{Texture} {\bfseries no\+Texture}}\label{a01296_a4ab7565a04d6a7e2d106dea1fffc35cd}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 195 of file Texture\+Data.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a01296_aac13701a4c33360c9c63f4404b333710}{\index{Texture\+Data@{Texture\+Data}!add\+Texture@{add\+Texture}}
\index{add\+Texture@{add\+Texture}!Texture\+Data@{Texture\+Data}}
\subsubsection[{add\+Texture}]{\setlength{\rightskip}{0pt plus 5cm}int Texture\+Data\+::add\+Texture (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name, }
\item[{Q\+String}]{\+\_\+filename, }
\item[{uint}]{\+\_\+dimension, }
\item[{G\+Luint}]{\+\_\+gl\+Name}
\end{DoxyParamCaption}
)}}\label{a01296_aac13701a4c33360c9c63f4404b333710}


Add a \hyperlink{a01281}{Texture}. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
{\em \+\_\+filename} & filename of the texture \\
\hline
{\em \+\_\+dimension} & dimension of the texture \\
\hline
{\em \+\_\+gl\+Name} & gl\+Name for the texture \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
persistent id of the texture 
\end{DoxyReturn}


Definition at line 164 of file Texture\+Data.\+cc.

\hypertarget{a01296_a7dc89c65832fef870f1d4b5581f20afa}{\index{Texture\+Data@{Texture\+Data}!copy\+Per\+Object\+Data@{copy\+Per\+Object\+Data}}
\index{copy\+Per\+Object\+Data@{copy\+Per\+Object\+Data}!Texture\+Data@{Texture\+Data}}
\subsubsection[{copy\+Per\+Object\+Data}]{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf Per\+Object\+Data}$\ast$ Texture\+Data\+::copy\+Per\+Object\+Data (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a01296_a7dc89c65832fef870f1d4b5581f20afa}


Copy Function. 

You have to reimplement this function to allow the core to create a copies of your Object. By default it will return 0;

The function has to create a deep copy of the object, as it will also be used to create backups. If you use pointer inside your class, remember to not copy the pointer only but also the data! 

Reimplemented from \hyperlink{a00953_a0ff13ad2e3fc9df25f6de96a1cd384e0}{Per\+Object\+Data}.



Definition at line 206 of file Texture\+Data.\+hh.

\hypertarget{a01296_acd1c41fb723fb40c65be7f35da946d7d}{\index{Texture\+Data@{Texture\+Data}!disable\+Texture@{disable\+Texture}}
\index{disable\+Texture@{disable\+Texture}!Texture\+Data@{Texture\+Data}}
\subsubsection[{disable\+Texture}]{\setlength{\rightskip}{0pt plus 5cm}void Texture\+Data\+::disable\+Texture (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name}
\end{DoxyParamCaption}
)}}\label{a01296_acd1c41fb723fb40c65be7f35da946d7d}


Disable a given texture. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
\end{DoxyParams}


Definition at line 146 of file Texture\+Data.\+cc.

\hypertarget{a01296_aeada567ee30b99a91573390051a27cca}{\index{Texture\+Data@{Texture\+Data}!enable\+Texture@{enable\+Texture}}
\index{enable\+Texture@{enable\+Texture}!Texture\+Data@{Texture\+Data}}
\subsubsection[{enable\+Texture}]{\setlength{\rightskip}{0pt plus 5cm}bool Texture\+Data\+::enable\+Texture (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name, }
\item[{bool}]{\+\_\+exclusive = {\ttfamily false}}
\end{DoxyParamCaption}
)}}\label{a01296_aeada567ee30b99a91573390051a27cca}


Enable a given texture. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
{\em \+\_\+exclusive} & disable other textures? \\
\hline
\end{DoxyParams}


Definition at line 122 of file Texture\+Data.\+cc.

\hypertarget{a01296_abb35b79674eaef3564fe61d0f0a0c25b}{\index{Texture\+Data@{Texture\+Data}!get\+Texture\+Index@{get\+Texture\+Index}}
\index{get\+Texture\+Index@{get\+Texture\+Index}!Texture\+Data@{Texture\+Data}}
\subsubsection[{get\+Texture\+Index}]{\setlength{\rightskip}{0pt plus 5cm}int Texture\+Data\+::get\+Texture\+Index (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{a01296_abb35b79674eaef3564fe61d0f0a0c25b}


Get the index of a given texture. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
index in texture vector or -\/1 if not found 
\end{DoxyReturn}


Definition at line 296 of file Texture\+Data.\+cc.

\hypertarget{a01296_a2483f9a8a9e3dabc5896f86098477f93}{\index{Texture\+Data@{Texture\+Data}!is\+Enabled@{is\+Enabled}}
\index{is\+Enabled@{is\+Enabled}!Texture\+Data@{Texture\+Data}}
\subsubsection[{is\+Enabled}]{\setlength{\rightskip}{0pt plus 5cm}bool Texture\+Data\+::is\+Enabled (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name}
\end{DoxyParamCaption}
)}}\label{a01296_a2483f9a8a9e3dabc5896f86098477f93}


Check if a texture is enabled. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
returns wether the texture is enabled 
\end{DoxyReturn}


Definition at line 105 of file Texture\+Data.\+cc.

\hypertarget{a01296_a3985f082d83952cb1ec6ffc55aad3981}{\index{Texture\+Data@{Texture\+Data}!property\+Map@{property\+Map}}
\index{property\+Map@{property\+Map}!Texture\+Data@{Texture\+Data}}
\subsubsection[{property\+Map}]{\setlength{\rightskip}{0pt plus 5cm}std\+::map$<$ int, std\+::string $>$ $\ast$ Texture\+Data\+::property\+Map (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a01296_a3985f082d83952cb1ec6ffc55aad3981}


Get pointer to the property\+Map. 

This map is used to store the available Textures and map them to their corresponding properties.

\begin{DoxyReturn}{Returns}
property\+Map 
\end{DoxyReturn}


Definition at line 336 of file Texture\+Data.\+cc.

\hypertarget{a01296_a2a9d3602a40b81b11a455905a0eb637a}{\index{Texture\+Data@{Texture\+Data}!texture@{texture}}
\index{texture@{texture}!Texture\+Data@{Texture\+Data}}
\subsubsection[{texture}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Texture} \& Texture\+Data\+::texture (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name}
\end{DoxyParamCaption}
)}}\label{a01296_a2a9d3602a40b81b11a455905a0eb637a}


Get the texture object. 

get texture object of a given texture


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
corresponding texture object 
\end{DoxyReturn}


Definition at line 277 of file Texture\+Data.\+cc.

\hypertarget{a01296_ac1c2193b143462da8a87af07f927e37d}{\index{Texture\+Data@{Texture\+Data}!texture\+Exists@{texture\+Exists}}
\index{texture\+Exists@{texture\+Exists}!Texture\+Data@{Texture\+Data}}
\subsubsection[{texture\+Exists}]{\setlength{\rightskip}{0pt plus 5cm}bool Texture\+Data\+::texture\+Exists (
\begin{DoxyParamCaption}
\item[{Q\+String}]{\+\_\+texture\+Name}
\end{DoxyParamCaption}
)}}\label{a01296_ac1c2193b143462da8a87af07f927e37d}


Check if a texture exists. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+texture\+Name} & name of the texture \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
returns wether the texture exists 
\end{DoxyReturn}


Definition at line 93 of file Texture\+Data.\+cc.

\hypertarget{a01296_aa0f7ee0f32c058d8c6717a670c434529}{\index{Texture\+Data@{Texture\+Data}!texture\+Map@{texture\+Map}}
\index{texture\+Map@{texture\+Map}!Texture\+Data@{Texture\+Data}}
\subsubsection[{texture\+Map}]{\setlength{\rightskip}{0pt plus 5cm}std\+::map$<$ int, G\+Luint $>$ $\ast$ Texture\+Data\+::texture\+Map (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a01296_aa0f7ee0f32c058d8c6717a670c434529}


Get pointer to the texture\+Map. 

This map maps all available textures for the object which this class belongs to to their G\+Luint. The Mesh\+Node will use this map to activate one texture for each face.

\begin{DoxyReturn}{Returns}
texture\+Map 
\end{DoxyReturn}


Definition at line 326 of file Texture\+Data.\+cc.

\hypertarget{a01296_a53185dd83b36743c694c70e08814adb0}{\index{Texture\+Data@{Texture\+Data}!textures@{textures}}
\index{textures@{textures}!Texture\+Data@{Texture\+Data}}
\subsubsection[{textures}]{\setlength{\rightskip}{0pt plus 5cm}std\+::vector$<$ {\bf Texture} $>$ \& Texture\+Data\+::textures (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{a01296_a53185dd83b36743c694c70e08814adb0}


Get reference to the texture vector. 

\begin{DoxyReturn}{Returns}
texture vector 
\end{DoxyReturn}


Definition at line 316 of file Texture\+Data.\+cc.



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