\section{TPProto::Design Class Reference}
\label{classTPProto_1_1Design}\index{TPProto::Design@{TPProto::Design}}
A \doxyref{Frame}{p.}{classTPProto_1_1Frame} to hold Designs from the server.  


{\tt \#include $<$design.h$>$}

Inheritance diagram for TPProto::Design::\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2cm]{classTPProto_1_1Design}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
{\bf Design} ()\label{classTPProto_1_1Design_4351f8eecb98845c02027ee88e6370e3}

\begin{CompactList}\small\item\em Default constructor. \item\end{CompactList}\item 
virtual {\bf $\sim$Design} ()\label{classTPProto_1_1Design_d58d804799eaf1ee51197c349373c8f9}

\begin{CompactList}\small\item\em Required virtual destructor. \item\end{CompactList}\item 
void {\bf pack\-Buffer} ({\bf Buffer} $\ast$buf)
\begin{CompactList}\small\item\em Pack into a \doxyref{Buffer}{p.}{classTPProto_1_1Buffer}, asserts. \item\end{CompactList}\item 
bool {\bf unpack\-Buffer} ({\bf Buffer} $\ast$buf)
\begin{CompactList}\small\item\em Unpack from a \doxyref{Buffer}{p.}{classTPProto_1_1Buffer}. Unpacks the \doxyref{Design}{p.}{classTPProto_1_1Design} frame from the buffer. \item\end{CompactList}\item 
uint32\_\-t {\bf get\-Design\-Id} () const
\begin{CompactList}\small\item\em Gets the \doxyref{Design}{p.}{classTPProto_1_1Design} id. \item\end{CompactList}\item 
uint64\_\-t {\bf get\-Mod\-Time} () const
\begin{CompactList}\small\item\em Gets the last modification time of this \doxyref{Design}{p.}{classTPProto_1_1Design}. \item\end{CompactList}\item 
std::set$<$ uint32\_\-t $>$ {\bf get\-Categories} () const
\begin{CompactList}\small\item\em Gets the categories this \doxyref{Design}{p.}{classTPProto_1_1Design} is in. \item\end{CompactList}\item 
std::string {\bf get\-Name} () const
\begin{CompactList}\small\item\em Gets the name of this \doxyref{Design}{p.}{classTPProto_1_1Design}. \item\end{CompactList}\item 
std::string {\bf get\-Description} () const
\begin{CompactList}\small\item\em Gets the description of this \doxyref{Design}{p.}{classTPProto_1_1Design}. \item\end{CompactList}\item 
uint32\_\-t {\bf get\-Num\-In\-Use} () const
\begin{CompactList}\small\item\em Gets the number of times this design is in use. If is 0xffffffff (ie, -1), then the design is not currently usable. \item\end{CompactList}\item 
uint32\_\-t {\bf get\-Player\-Owner} () const
\begin{CompactList}\small\item\em Gets the \doxyref{Player}{p.}{classTPProto_1_1Player} that owns this \doxyref{Design}{p.}{classTPProto_1_1Design}. Can be 0xffffffff (ie, -1) if the owner is not known. \item\end{CompactList}\item 
std::map$<$ uint32\_\-t, uint32\_\-t $>$ {\bf get\-Components} () const
\begin{CompactList}\small\item\em Gets the components that make up this design. \item\end{CompactList}\item 
std::string {\bf get\-Design\-Feedback} () const
\begin{CompactList}\small\item\em Gets the feedback on the design. \item\end{CompactList}\item 
std::map$<$ uint32\_\-t, std::string $>$ {\bf get\-Property\-Values} () const
\begin{CompactList}\small\item\em Gets the property values of this design. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
A \doxyref{Frame}{p.}{classTPProto_1_1Frame} to hold Designs from the server. 



\subsection{Member Function Documentation}
\index{TPProto::Design@{TPProto::Design}!packBuffer@{packBuffer}}
\index{packBuffer@{packBuffer}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}void TPProto::Design::pack\-Buffer ({\bf Buffer} $\ast$ {\em buf})\hspace{0.3cm}{\tt  [virtual]}}\label{classTPProto_1_1Design_604b2a14fbc4f58d93d9387cf0f52136}


Pack into a \doxyref{Buffer}{p.}{classTPProto_1_1Buffer}, asserts. 

Packs this \doxyref{Design}{p.}{classTPProto_1_1Design} frame into the buffer. Since the frame only comes from the server, this method assert(0). \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em buf}]\doxyref{Buffer}{p.}{classTPProto_1_1Buffer} to pack into, ignored. \end{description}
\end{Desc}


Implements {\bf TPProto::Frame} \doxyref{}{p.}{classTPProto_1_1Frame_67b50ee76e90385e56f04202ce1da67e}.\index{TPProto::Design@{TPProto::Design}!unpackBuffer@{unpackBuffer}}
\index{unpackBuffer@{unpackBuffer}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}bool TPProto::Design::unpack\-Buffer ({\bf Buffer} $\ast$ {\em buf})\hspace{0.3cm}{\tt  [virtual]}}\label{classTPProto_1_1Design_8b93b864bdbe067cc2fa76452fe8f026}


Unpack from a \doxyref{Buffer}{p.}{classTPProto_1_1Buffer}. Unpacks the \doxyref{Design}{p.}{classTPProto_1_1Design} frame from the buffer. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em buf}]The \doxyref{Buffer}{p.}{classTPProto_1_1Buffer} to unpack out of. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]True if sucessful, false otherwise. \end{Desc}


Implements {\bf TPProto::Frame} \doxyref{}{p.}{classTPProto_1_1Frame_fe220a4229f471a3cc6a143f7a27e321}.\index{TPProto::Design@{TPProto::Design}!getDesignId@{getDesignId}}
\index{getDesignId@{getDesignId}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}uint32\_\-t TPProto::Design::get\-Design\-Id () const}\label{classTPProto_1_1Design_3ccbea89780fb44b8bc1bb5dcb718b8c}


Gets the \doxyref{Design}{p.}{classTPProto_1_1Design} id. 

\begin{Desc}
\item[Returns:]The \doxyref{Design}{p.}{classTPProto_1_1Design} id number. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getModTime@{getModTime}}
\index{getModTime@{getModTime}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}uint64\_\-t TPProto::Design::get\-Mod\-Time () const}\label{classTPProto_1_1Design_0dcf713a02082d3b2583ae29de23bce1}


Gets the last modification time of this \doxyref{Design}{p.}{classTPProto_1_1Design}. 

\begin{Desc}
\item[Returns:]The modtime. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getCategories@{getCategories}}
\index{getCategories@{getCategories}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::set$<$ uint32\_\-t $>$ TPProto::Design::get\-Categories () const}\label{classTPProto_1_1Design_fd557533178d786dd1ce7f7ca44fd170}


Gets the categories this \doxyref{Design}{p.}{classTPProto_1_1Design} is in. 

\begin{Desc}
\item[Returns:]The set of categories. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getName@{getName}}
\index{getName@{getName}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::string TPProto::Design::get\-Name () const}\label{classTPProto_1_1Design_ee802fc4582c92704b52e0275f218662}


Gets the name of this \doxyref{Design}{p.}{classTPProto_1_1Design}. 

\begin{Desc}
\item[Returns:]The name of the \doxyref{Design}{p.}{classTPProto_1_1Design}. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getDescription@{getDescription}}
\index{getDescription@{getDescription}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::string TPProto::Design::get\-Description () const}\label{classTPProto_1_1Design_93160a36d581b366618743a7b4ce9562}


Gets the description of this \doxyref{Design}{p.}{classTPProto_1_1Design}. 

\begin{Desc}
\item[Returns:]The description of the \doxyref{Design}{p.}{classTPProto_1_1Design}. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getNumInUse@{getNumInUse}}
\index{getNumInUse@{getNumInUse}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}uint32\_\-t TPProto::Design::get\-Num\-In\-Use () const}\label{classTPProto_1_1Design_1108ce414adff3e00509b4595a935515}


Gets the number of times this design is in use. If is 0xffffffff (ie, -1), then the design is not currently usable. 

\begin{Desc}
\item[Returns:]The number of times the design is in use. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getPlayerOwner@{getPlayerOwner}}
\index{getPlayerOwner@{getPlayerOwner}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}uint32\_\-t TPProto::Design::get\-Player\-Owner () const}\label{classTPProto_1_1Design_e5451a6ff0e18c2b1253536aacf42793}


Gets the \doxyref{Player}{p.}{classTPProto_1_1Player} that owns this \doxyref{Design}{p.}{classTPProto_1_1Design}. Can be 0xffffffff (ie, -1) if the owner is not known. 

\begin{Desc}
\item[Returns:]The \doxyref{Player}{p.}{classTPProto_1_1Player} id of the owner. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getComponents@{getComponents}}
\index{getComponents@{getComponents}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::map$<$ uint32\_\-t, uint32\_\-t $>$ TPProto::Design::get\-Components () const}\label{classTPProto_1_1Design_98c75a40d09831c4f6e977aa54db3ee7}


Gets the components that make up this design. 

\begin{Desc}
\item[Returns:]The map of component ids and the number in this design. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getDesignFeedback@{getDesignFeedback}}
\index{getDesignFeedback@{getDesignFeedback}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::string TPProto::Design::get\-Design\-Feedback () const}\label{classTPProto_1_1Design_fe2b17977aa9f8402435696b233f7f59}


Gets the feedback on the design. 

\begin{Desc}
\item[Returns:]The feedback. \end{Desc}
\index{TPProto::Design@{TPProto::Design}!getPropertyValues@{getPropertyValues}}
\index{getPropertyValues@{getPropertyValues}!TPProto::Design@{TPProto::Design}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}std::map$<$ uint32\_\-t, std::string $>$ TPProto::Design::get\-Property\-Values () const}\label{classTPProto_1_1Design_c797d4304dcefe521b1362feb5ca3742}


Gets the property values of this design. 

\begin{Desc}
\item[Returns:]The map of property value id and string display value. \end{Desc}


The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
tpproto/{\bf design.h}\item 
tpproto/design.cpp\end{CompactItemize}
