\hypertarget{class_s_c_i_run_1_1_barrier}{\section{Barrier Class Reference}
\label{class_s_c_i_run_1_1_barrier}\index{Barrier@{Barrier}}
}


{\ttfamily \#include $<$Barrier.\-h$>$}

Inheritance diagram for Barrier\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_s_c_i_run_1_1_barrier}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_s_c_i_run_1_1_barrier_a333662d4facc794b3b0ac782e266dd22}{Barrier} (const char $\ast$\hyperlink{_boost_graph_example_tests_8cc_a8ad72759d07f18eaf8f6690e5dfb747c}{name})
\item 
virtual \hyperlink{class_s_c_i_run_1_1_barrier_a12807eb6b283f1c00fb361e6c703c90a}{$\sim$\-Barrier} ()
\begin{DoxyCompactList}\small\item\em Destroy the barrier. \end{DoxyCompactList}\item 
void \hyperlink{class_s_c_i_run_1_1_barrier_ab5697510a2dbf4a6d52d73c81ba6c225}{wait} (int num\-Threads)
\end{DoxyCompactItemize}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_s_c_i_run_1_1_barrier_a333662d4facc794b3b0ac782e266dd22}{\index{S\-C\-I\-Run\-::\-Barrier@{S\-C\-I\-Run\-::\-Barrier}!Barrier@{Barrier}}
\index{Barrier@{Barrier}!SCIRun::Barrier@{S\-C\-I\-Run\-::\-Barrier}}
\subsubsection[{Barrier}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Barrier} (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{name}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [explicit]}}}\label{class_s_c_i_run_1_1_barrier_a333662d4facc794b3b0ac782e266dd22}
Create a barrier which will be used by a variable number of threads. {\ttfamily name} should be a static string which describes the primitive for debugging purposes. \hypertarget{class_s_c_i_run_1_1_barrier_a12807eb6b283f1c00fb361e6c703c90a}{\index{S\-C\-I\-Run\-::\-Barrier@{S\-C\-I\-Run\-::\-Barrier}!$\sim$\-Barrier@{$\sim$\-Barrier}}
\index{$\sim$\-Barrier@{$\sim$\-Barrier}!SCIRun::Barrier@{S\-C\-I\-Run\-::\-Barrier}}
\subsubsection[{$\sim$\-Barrier}]{\setlength{\rightskip}{0pt plus 5cm}$\sim${\bf Barrier} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{class_s_c_i_run_1_1_barrier_a12807eb6b283f1c00fb361e6c703c90a}


Destroy the barrier. 



\subsection{Member Function Documentation}
\hypertarget{class_s_c_i_run_1_1_barrier_ab5697510a2dbf4a6d52d73c81ba6c225}{\index{S\-C\-I\-Run\-::\-Barrier@{S\-C\-I\-Run\-::\-Barrier}!wait@{wait}}
\index{wait@{wait}!SCIRun::Barrier@{S\-C\-I\-Run\-::\-Barrier}}
\subsubsection[{wait}]{\setlength{\rightskip}{0pt plus 5cm}void wait (
\begin{DoxyParamCaption}
\item[{int}]{num\-Threads}
\end{DoxyParamCaption}
)}}\label{class_s_c_i_run_1_1_barrier_ab5697510a2dbf4a6d52d73c81ba6c225}
This causes all of the threads to block at this method until all num\-Threads threads have called the method. After all threads have arrived, they are all allowed to return. 

The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
Core/\-Thread/\-Legacy/\hyperlink{_legacy_2_barrier_8h}{Barrier.\-h}\item 
Core/\-Thread/\-Legacy/\hyperlink{_thread__none_8cc}{Thread\-\_\-none.\-cc}\end{DoxyCompactItemize}
