\hypertarget{_ogre_small_vector_8h}{}\doxysection{Ogre\+Small\+Vector.\+h File Reference}
\label{_ogre_small_vector_8h}\index{OgreSmallVector.h@{OgreSmallVector.h}}
{\ttfamily \#include $<$algorithm$>$}\newline
{\ttfamily \#include $<$cassert$>$}\newline
{\ttfamily \#include $<$cstddef$>$}\newline
{\ttfamily \#include $<$cstdlib$>$}\newline
{\ttfamily \#include $<$cstring$>$}\newline
{\ttfamily \#include $<$iterator$>$}\newline
{\ttfamily \#include $<$memory$>$}\newline
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like}{Ogre\+::is\+Pod\+Like$<$ T $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01bool_01_4}{Ogre\+::is\+Pod\+Like$<$ bool $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01char_01_4}{Ogre\+::is\+Pod\+Like$<$ char $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01double_01_4}{Ogre\+::is\+Pod\+Like$<$ double $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01float_01_4}{Ogre\+::is\+Pod\+Like$<$ float $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01int_01_4}{Ogre\+::is\+Pod\+Like$<$ int $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01long_01_4}{Ogre\+::is\+Pod\+Like$<$ long $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01short_01_4}{Ogre\+::is\+Pod\+Like$<$ short $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01signed_01char_01_4}{Ogre\+::is\+Pod\+Like$<$ signed char $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01std_1_1pair_3_01_t_00_01_u_01_4_01_4}{Ogre\+::is\+Pod\+Like$<$ std\+::pair$<$ T, U $>$ $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01_t_01_5_01_4}{Ogre\+::is\+Pod\+Like$<$ T $\ast$ $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01unsigned_01_4}{Ogre\+::is\+Pod\+Like$<$ unsigned $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01unsigned_01char_01_4}{Ogre\+::is\+Pod\+Like$<$ unsigned char $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01unsigned_01long_01_4}{Ogre\+::is\+Pod\+Like$<$ unsigned long $>$}}
\item 
struct \mbox{\hyperlink{struct_ogre_1_1is_pod_like_3_01unsigned_01short_01_4}{Ogre\+::is\+Pod\+Like$<$ unsigned short $>$}}
\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector}{Ogre\+::\+Small\+Vector$<$ T, N $>$}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_small_vector}{Small\+Vector}} -\/ This is a \textquotesingle{}vector\textquotesingle{} (really, a variable-\/sized array), optimized for the case when the array is small. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_3_01_t_00_010_01_4}{Ogre\+::\+Small\+Vector$<$ T, 0 $>$}}
\begin{DoxyCompactList}\small\item\em Specialize \mbox{\hyperlink{class_ogre_1_1_small_vector}{Small\+Vector}} at N=0. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_base}{Ogre\+::\+Small\+Vector\+Base}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_small_vector_base}{Small\+Vector\+Base}} -\/ This is all the non-\/templated stuff common to all Small\+Vectors. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_impl}{Ogre\+::\+Small\+Vector\+Impl$<$ T $>$}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_small_vector_impl}{Small\+Vector\+Impl}} -\/ This class consists of common code factored out of the \mbox{\hyperlink{class_ogre_1_1_small_vector}{Small\+Vector}} class to reduce code duplication based on the \mbox{\hyperlink{class_ogre_1_1_small_vector}{Small\+Vector}} \textquotesingle{}N\textquotesingle{} template parameter. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_template_base}{Ogre\+::\+Small\+Vector\+Template\+Base$<$ T, is\+Pod\+Like $>$}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_small_vector_template_base}{Small\+Vector\+Template\+Base}}$<$\mbox{\hyperlink{struct_ogre_1_1is_pod_like}{is\+Pod\+Like}} = false$>$ -\/ This is where we put method implementations that are designed to work with non-\/\+P\+O\+D-\/like T\textquotesingle{}s. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_template_base_3_01_t_00_01true_01_4}{Ogre\+::\+Small\+Vector\+Template\+Base$<$ T, true $>$}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_ogre_1_1_small_vector_template_base}{Small\+Vector\+Template\+Base}}$<$\mbox{\hyperlink{struct_ogre_1_1is_pod_like}{is\+Pod\+Like}} = true$>$ -\/ This is where we put method implementations that are designed to work with P\+O\+D-\/like T\textquotesingle{}s. \end{DoxyCompactList}\item 
class \mbox{\hyperlink{class_ogre_1_1_small_vector_template_common}{Ogre\+::\+Small\+Vector\+Template\+Common$<$ T $>$}}
\end{DoxyCompactItemize}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
 \mbox{\hyperlink{namespace_ogre}{Ogre}}
\item 
 \mbox{\hyperlink{namespacestd}{std}}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$typename T , unsigned N$>$ }\\void \mbox{\hyperlink{namespacestd_af60633ec58754c4b3cc2c56314bf1882}{std\+::swap}} (\mbox{\hyperlink{class_ogre_1_1_small_vector}{Ogre\+::\+Small\+Vector}}$<$ T, N $>$ \&L\+HS, \mbox{\hyperlink{class_ogre_1_1_small_vector}{Ogre\+::\+Small\+Vector}}$<$ T, N $>$ \&R\+HS)
\begin{DoxyCompactList}\small\item\em Implement \mbox{\hyperlink{namespacestd_ac0f5c834836c0f5a4602cff74511d272}{std\+::swap}} in terms of Small\+Vector swap. \end{DoxyCompactList}\item 
{\footnotesize template$<$typename T $>$ }\\void \mbox{\hyperlink{namespacestd_ac0f5c834836c0f5a4602cff74511d272}{std\+::swap}} (\mbox{\hyperlink{class_ogre_1_1_small_vector_impl}{Ogre\+::\+Small\+Vector\+Impl}}$<$ T $>$ \&L\+HS, \mbox{\hyperlink{class_ogre_1_1_small_vector_impl}{Ogre\+::\+Small\+Vector\+Impl}}$<$ T $>$ \&R\+HS)
\begin{DoxyCompactList}\small\item\em Implement \mbox{\hyperlink{namespacestd_ac0f5c834836c0f5a4602cff74511d272}{std\+::swap}} in terms of Small\+Vector swap. \end{DoxyCompactList}\end{DoxyCompactItemize}
