\section{Test$<$ T, i $>$ Class Template Reference}
\label{classTest}\index{Test@{Test}}
A test class.  


{\tt \#include $<$inc/class.h$>$}

Inheritance diagram for Test$<$ T, i $>$::\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2cm]{classTest}
\end{center}
\end{figure}
\subsection*{Group2}
Description of group 2. \begin{CompactItemize}
\item 
void {\bf func1In\-Group2} ()
\item 
void {\bf func2In\-Group2} ()
\end{CompactItemize}
\subsection*{Public Types}
\begin{CompactItemize}
\item 
enum {\bf Enum\-Type} \{ {\bf EVal1}, 
{\bf EVal2}
 \}
\item 
enum {\bf EType} \{ {\bf Val1}, 
{\bf Val2}
 \}
\item 
enum {\bf TEnum} \{ {\bf Val1}, 
{\bf Val2}
 \}
\item 
enum {\bf Another\-Enum} \{ {\bf V1}, 
{\bf V2}
 \}
\item 
enum {\bf TEnum} \{ {\bf TVal1}, 
{\bf TVal2}, 
{\bf TVal3}
 \}
\item 
enum {\bf TEnum} \{ {\bf TVal1}, 
{\bf TVal2}, 
{\bf TVal3}
 \}
\begin{CompactList}\small\item\em An enum. \item\end{CompactList}\end{CompactItemize}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
void {\bf member} ()\label{classTest_a0}

\begin{CompactList}\small\item\em a member function. \item\end{CompactList}\item 
{\bf Test} ()
\begin{CompactList}\small\item\em constructor \item\end{CompactList}\item 
{\bf $\sim$Test} ()
\begin{CompactList}\small\item\em destructor \item\end{CompactList}\item 
void {\bf member} (int)
\item 
void {\bf member} (int, int)
\item 
void {\bf example} ()
\item 
const char $\ast$ {\bf member} (char, int)  throw (std::out\_\-of\_\-range)
\begin{CompactList}\small\item\em A member function. \item\end{CompactList}\item 
void {\bf example} ()\label{classTest_a7}

\begin{CompactList}\small\item\em a member function \item\end{CompactList}\item 
{\bf Test} ()
\item 
{\bf $\sim$Test} ()
\item 
int {\bf test\-Me} (int a, const char $\ast$s)
\item 
virtual void {\bf test\-Me\-Too} (char c1, char c2)=0
\item 
void {\bf ungrouped\-Function} ()
\item 
void {\bf draw\-Rect} (int, int, int, int)
\item 
void {\bf draw\-Rect} (const Rect \&r)
\item 
{\bf Test} ()
\begin{CompactList}\small\item\em A constructor. \item\end{CompactList}\item 
{\bf $\sim$Test} ()
\begin{CompactList}\small\item\em A destructor. \item\end{CompactList}\item 
int {\bf test\-Me} (int a, const char $\ast$s)
\begin{CompactList}\small\item\em A normal member taking two arguments and returning an integer value. \item\end{CompactList}\item 
virtual void {\bf test\-Me\-Too} (char c1, char c2)=0
\begin{CompactList}\small\item\em A pure virtual member. \item\end{CompactList}\item 
{\bf Test} (const {\bf Test} \&)
\end{CompactItemize}
{\bf }\par
\begin{CompactItemize}
\item 
void {\bf func1In\-Group1} ()
\item 
void {\bf func2In\-Group1} ()\label{classTest_z3_1}

\end{CompactItemize}

\subsection*{Public Attributes}
\begin{CompactItemize}
\item 
enum {\bf Test::TEnum} $\ast$ {\bf enum\-Ptr}
\item 
enum {\bf Test::TEnum} {\bf enum\-Var}
\item 
int {\bf public\-Var}
\begin{CompactList}\small\item\em A public variable. \item\end{CompactList}\item 
int($\ast$ {\bf handler} )(int a, int b)
\begin{CompactList}\small\item\em A function variable. \item\end{CompactList}\item 
enum {\bf Test::TEnum} $\ast$ {\bf enum\-Ptr}
\begin{CompactList}\small\item\em Enum pointer. \item\end{CompactList}\item 
enum {\bf Test::TEnum} {\bf enum\-Var}
\begin{CompactList}\small\item\em Enum variable. \item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Attributes}
\begin{CompactItemize}
\item 
int {\bf value}
\item 
int {\bf var}
\end{CompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class T, int i = 100$>$ class Test$<$ T, i $>$}

A test class. 

A test class 



\subsection{Member Enumeration Documentation}
\index{Test@{Test}!AnotherEnum@{AnotherEnum}}
\index{AnotherEnum@{AnotherEnum}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::Another\-Enum}}\label{classTest_w12}


Another enum, with inline docs \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{V1@{V1}!Test@{Test}}\index{Test@{Test}!V1@{V1}}\item[{\em 
V1\label{classTest_w12w4}
}]value 1 \index{V2@{V2}!Test@{Test}}\index{Test@{Test}!V2@{V2}}\item[{\em 
V2\label{classTest_w12w5}
}]value 2 \end{description}
\end{Desc}

\index{Test@{Test}!EnumType@{EnumType}}
\index{EnumType@{EnumType}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::Enum\-Type}}\label{classTest_w9}


An enum type. The documentation block cannot be put after the enum! \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{EVal1@{EVal1}!Test@{Test}}\index{Test@{Test}!EVal1@{EVal1}}\item[{\em 
EVal1\label{classTest_w9w0}
}]enum value 1 \index{EVal2@{EVal2}!Test@{Test}}\index{Test@{Test}!EVal2@{EVal2}}\item[{\em 
EVal2\label{classTest_w9w1}
}]enum value 2 \end{description}
\end{Desc}

\index{Test@{Test}!EType@{EType}}
\index{EType@{EType}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::EType}}\label{classTest_w10}


An enum type. More details \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{Val1@{Val1}!Test@{Test}}\index{Test@{Test}!Val1@{Val1}}\item[{\em 
Val1\label{classTest_w11w2}
}]enum value 1 \index{Val2@{Val2}!Test@{Test}}\index{Test@{Test}!Val2@{Val2}}\item[{\em 
Val2\label{classTest_w11w3}
}]enum value 2 \end{description}
\end{Desc}

\index{Test@{Test}!TEnum@{TEnum}}
\index{TEnum@{TEnum}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}}\label{classTest_w14}


An enum. 

More detailed enum description. \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{TVal1@{TVal1}!Test@{Test}}\index{Test@{Test}!TVal1@{TVal1}}\item[{\em 
TVal1\label{classTest_w14w6}
}]enum value TVal1. \index{TVal2@{TVal2}!Test@{Test}}\index{Test@{Test}!TVal2@{TVal2}}\item[{\em 
TVal2\label{classTest_w14w7}
}]enum value TVal2. \index{TVal3@{TVal3}!Test@{Test}}\index{Test@{Test}!TVal3@{TVal3}}\item[{\em 
TVal3\label{classTest_w14w8}
}]enum value TVal3. \end{description}
\end{Desc}

\index{Test@{Test}!TEnum@{TEnum}}
\index{TEnum@{TEnum}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}}\label{classTest_w13}


An enum. More detailed enum description. \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{TVal1@{TVal1}!Test@{Test}}\index{Test@{Test}!TVal1@{TVal1}}\item[{\em 
TVal1\label{classTest_w14w6}
}]enum value TVal1. \index{TVal2@{TVal2}!Test@{Test}}\index{Test@{Test}!TVal2@{TVal2}}\item[{\em 
TVal2\label{classTest_w14w7}
}]enum value TVal2. \index{TVal3@{TVal3}!Test@{Test}}\index{Test@{Test}!TVal3@{TVal3}}\item[{\em 
TVal3\label{classTest_w14w8}
}]enum value TVal3. \end{description}
\end{Desc}

\index{Test@{Test}!TEnum@{TEnum}}
\index{TEnum@{TEnum}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}}\label{classTest_w11}


A description of the enum type. \begin{Desc}
\item[Enumeration values: ]\par
\begin{description}
\index{Val1@{Val1}!Test@{Test}}\index{Test@{Test}!Val1@{Val1}}\item[{\em 
Val1\label{classTest_w11w2}
}]enum value 1 \index{Val2@{Val2}!Test@{Test}}\index{Test@{Test}!Val2@{Val2}}\item[{\em 
Val2\label{classTest_w11w3}
}]enum value 2 \end{description}
\end{Desc}



\subsection{Constructor \& Destructor Documentation}
\index{Test@{Test}!Test@{Test}}
\index{Test@{Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i$>$ {\bf Test}$<$ T, i $>$::{\bf Test} ()}\label{classTest_a1}


constructor 

details. \index{Test@{Test}!~Test@{$\sim$Test}}
\index{~Test@{$\sim$Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ {\bf Test}$<$ T, i $>$::$\sim${\bf Test} ()}\label{classTest_a2}


destructor 

details. \index{Test@{Test}!Test@{Test}}
\index{Test@{Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ {\bf Test}$<$ T, i $>$::{\bf Test} ()}\label{classTest_a8}


A constructor. A more elaborate description of the constructor. \index{Test@{Test}!~Test@{$\sim$Test}}
\index{~Test@{$\sim$Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ {\bf Test}$<$ T, i $>$::$\sim${\bf Test} ()}\label{classTest_a9}


A destructor. A more elaborate description of the destructor. \index{Test@{Test}!Test@{Test}}
\index{Test@{Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ {\bf Test}$<$ T, i $>$::{\bf Test} ()}\label{classTest_a15}


A constructor. 

A more elaborate description of the constructor. \index{Test@{Test}!~Test@{$\sim$Test}}
\index{~Test@{$\sim$Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ {\bf Test}$<$ T, i $>$::$\sim${\bf Test} ()}\label{classTest_a16}


A destructor. 

A more elaborate description of the destructor. \index{Test@{Test}!Test@{Test}}
\index{Test@{Test}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i$>$ {\bf Test}$<$ T, i $>$::{\bf Test} (const {\bf Test}$<$ T, i $>$ \& {\em t})}\label{classTest_a20}


The copy constructor 

\subsection{Member Function Documentation}
\index{Test@{Test}!drawRect@{drawRect}}
\index{drawRect@{drawRect}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::draw\-Rect (const Rect \& {\em r})}\label{classTest_a14}


This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.\index{Test@{Test}!drawRect@{drawRect}}
\index{drawRect@{drawRect}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::draw\-Rect (int {\em x}, int {\em y}, int {\em w}, int {\em h})}\label{classTest_a13}


This command draws a rectangle with a left upper corner at ( {\em x\/} , {\em y\/} ), width {\em w\/} and height {\em h\/}. \index{Test@{Test}!example@{example}}
\index{example@{example}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::example ()}\label{classTest_a5}


An example member function. More details about this function. 

Reimplemented in {\bf Tag} {\rm (p.\,\pageref{classTag_a0})}.\index{Test@{Test}!func1InGroup1@{func1InGroup1}}
\index{func1InGroup1@{func1InGroup1}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::func1In\-Group1 ()}\label{classTest_z3_0}


Same documentation for both members. Details \index{Test@{Test}!func1InGroup2@{func1InGroup2}}
\index{func1InGroup2@{func1InGroup2}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::func1In\-Group2 ()}\label{classTest_z1_0}


Function 1 in group 2. Details. \index{Test@{Test}!func2InGroup2@{func2InGroup2}}
\index{func2InGroup2@{func2InGroup2}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::func2In\-Group2 ()\hspace{0.3cm}{\tt  [protected]}}\label{classTest_z1_1}


Function 2 in group 2. Details. \index{Test@{Test}!member@{member}}
\index{member@{member}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ const char $\ast$ {\bf Test}$<$ T, i $>$::member (char {\em c}, int {\em n})  throw (std::out\_\-of\_\-range)}\label{classTest_a6}


A member function. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em c}]a character. \item[{\em n}]an integer. \end{description}
\end{Desc}
\begin{Desc}
\item[Exceptions:]
\begin{description}
\item[{\em std::out\_\-of\_\-range}]parameter is out of range. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]a character pointer. \end{Desc}
\index{Test@{Test}!member@{member}}
\index{member@{member}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::member (int, int)}\label{classTest_a4}


An overloaded member function. Details \index{Test@{Test}!member@{member}}
\index{member@{member}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::member (int)}\label{classTest_a3}


A member function. Details. \index{Test@{Test}!testMe@{testMe}}
\index{testMe@{testMe}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int {\bf Test}$<$ T, i $>$::test\-Me (int {\em a}, const char $\ast$ {\em s})}\label{classTest_a17}


A normal member taking two arguments and returning an integer value. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em a}]an integer argument. \item[{\em s}]a constant character pointer. \end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]The test results \end{Desc}
\begin{Desc}
\item[See also:]{\bf Test()}{\rm (p.\,\pageref{classTest_a1})}, {\bf $\sim$Test()}{\rm (p.\,\pageref{classTest_a2})}, {\bf test\-Me\-Too()}{\rm (p.\,\pageref{classTest_a11})} and {\bf public\-Var()}{\rm (p.\,\pageref{classTest_o2})} \end{Desc}
\index{Test@{Test}!testMe@{testMe}}
\index{testMe@{testMe}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int {\bf Test}$<$ T, i $>$::test\-Me (int {\em a}, const char $\ast$ {\em s})}\label{classTest_a10}


a normal member taking two arguments and returning an integer value. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em a}]an integer argument. \item[{\em s}]a constant character pointer. \end{description}
\end{Desc}
\begin{Desc}
\item[See also:]{\bf Test()}{\rm (p.\,\pageref{classTest_a1})} 

{\bf $\sim$Test()}{\rm (p.\,\pageref{classTest_a2})} 

{\bf test\-Me\-Too()}{\rm (p.\,\pageref{classTest_a11})} 

{\bf public\-Var()}{\rm (p.\,\pageref{classTest_o2})} \end{Desc}
\begin{Desc}
\item[Returns:]The test results \end{Desc}
\index{Test@{Test}!testMeToo@{testMeToo}}
\index{testMeToo@{testMeToo}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ virtual void {\bf Test}$<$ T, i $>$::test\-Me\-Too (char {\em c1}, char {\em c2})\hspace{0.3cm}{\tt  [pure virtual]}}\label{classTest_a18}


A pure virtual member. 

\begin{Desc}
\item[See also:]{\bf test\-Me()}{\rm (p.\,\pageref{classTest_a10})} \end{Desc}
\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em c1}]the first argument. \item[{\em c2}]the second argument. \end{description}
\end{Desc}
\index{Test@{Test}!testMeToo@{testMeToo}}
\index{testMeToo@{testMeToo}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ virtual void {\bf Test}$<$ T, i $>$::test\-Me\-Too (char {\em c1}, char {\em c2})\hspace{0.3cm}{\tt  [pure virtual]}}\label{classTest_a11}


A pure virtual member. \begin{Desc}
\item[See also:]{\bf test\-Me()}{\rm (p.\,\pageref{classTest_a10})} \end{Desc}
\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em c1}]the first argument. \item[{\em c2}]the second argument. \end{description}
\end{Desc}
\index{Test@{Test}!ungroupedFunction@{ungroupedFunction}}
\index{ungroupedFunction@{ungroupedFunction}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ void {\bf Test}$<$ T, i $>$::ungrouped\-Function ()}\label{classTest_a12}


Function without group. Details. 

\subsection{Member Data Documentation}
\index{Test@{Test}!enumPtr@{enumPtr}}
\index{enumPtr@{enumPtr}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}
         $\ast$ {\bf Test}$<$ T, i $>$::{\bf enum\-Ptr}}\label{classTest_o4}


Enum pointer. 

Details. \index{Test@{Test}!enumPtr@{enumPtr}}
\index{enumPtr@{enumPtr}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum} 
       $\ast$ {\bf Test}$<$ T, i $>$::{\bf enum\-Ptr}}\label{classTest_o0}


enum pointer. Details. \index{Test@{Test}!enumVar@{enumVar}}
\index{enumVar@{enumVar}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}
          {\bf Test}$<$ T, i $>$::{\bf enum\-Var}}\label{classTest_o5}


Enum variable. 

Details. \index{Test@{Test}!enumVar@{enumVar}}
\index{enumVar@{enumVar}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ enum {\bf Test::TEnum}
        {\bf Test}$<$ T, i $>$::{\bf enum\-Var}}\label{classTest_o1}


enum variable. Details. \index{Test@{Test}!handler@{handler}}
\index{handler@{handler}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int($\ast$ {\bf Test}$<$ T, i $>$::{\bf handler})(int a, int b)}\label{classTest_o3}


A function variable. 

a function variable. Details. \index{Test@{Test}!publicVar@{publicVar}}
\index{publicVar@{publicVar}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int {\bf Test}$<$ T, i $>$::{\bf public\-Var}}\label{classTest_o2}


A public variable. 

a public variable. Details. \index{Test@{Test}!value@{value}}
\index{value@{value}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int {\bf Test}$<$ T, i $>$::{\bf value}\hspace{0.3cm}{\tt  [protected]}}\label{classTest_p0}


an integer value \index{Test@{Test}!var@{var}}
\index{var@{var}!Test@{Test}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class T, int i = 100$>$ int {\bf Test}$<$ T, i $>$::{\bf var}\hspace{0.3cm}{\tt  [protected]}}\label{classTest_p1}


A member variable 

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
afterdoc.h\item 
{\bf autolink.cpp}\item 
enum.h\item 
jdstyle.cpp\item 
qtstyle.cpp\item 
example.cpp\item 
func.h\item 
include.cpp\item 
{\bf memgrp.cpp}\item 
overload.cpp\item 
templ.cpp\end{CompactItemize}
