\hypertarget{_scheduling_with_boost_graph_8cc}{\section{Dataflow/\-Engine/\-Scheduler/\-Tests/\-Scheduling\-With\-Boost\-Graph.cc File Reference}
\label{_scheduling_with_boost_graph_8cc}\index{Dataflow/\-Engine/\-Scheduler/\-Tests/\-Scheduling\-With\-Boost\-Graph.\-cc@{Dataflow/\-Engine/\-Scheduler/\-Tests/\-Scheduling\-With\-Boost\-Graph.\-cc}}
}
{\ttfamily \#include $<$gtest/gtest.\-h$>$}\\*
{\ttfamily \#include $<$gmock/gmock.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Network/\-Network.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Network/\-Module\-Interface.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Network/\-Module\-State\-Interface.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Network/\-Connection\-Id.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Datatypes/\-Dense\-Matrix.\-h$>$}\\*
{\ttfamily \#include $<$Modules/\-Basic/\-Send\-Test\-Matrix.\-h$>$}\\*
{\ttfamily \#include $<$Modules/\-Basic/\-Receive\-Test\-Matrix.\-h$>$}\\*
{\ttfamily \#include $<$Modules/\-Math/\-Evaluate\-Linear\-Algebra\-Unary.\-h$>$}\\*
{\ttfamily \#include $<$Modules/\-Factory/\-Hard\-Coded\-Module\-Factory.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Algorithms/\-Math/\-Evaluate\-Linear\-Algebra\-Unary\-Algo.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Algorithms/\-Math/\-Evaluate\-Linear\-Algebra\-Binary\-Algo.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Algorithms/\-Math/\-Report\-Matrix\-Info.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Network/\-Tests/\-Mock\-Module\-State.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-State/\-Simple\-Map\-Module\-State.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Engine/\-Scheduler/\-Boost\-Graph\-Serial\-Scheduler.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Engine/\-Scheduler/\-Linear\-Serial\-Network\-Executor.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Engine/\-Scheduler/\-Boost\-Graph\-Parallel\-Scheduler.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Engine/\-Scheduler/\-Basic\-Multithreaded\-Network\-Executor.\-h$>$}\\*
{\ttfamily \#include $<$Dataflow/\-Engine/\-Scheduler/\-Basic\-Parallel\-Execution\-Strategy.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Algorithms/\-Factory/\-Hard\-Coded\-Algorithm\-Factory.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Algorithms/\-Base/\-Algorithm\-Variable\-Names.\-h$>$}\\*
{\ttfamily \#include $<$Core/\-Logging/\-Log.\-h$>$}\\*
{\ttfamily \#include $<$boost/assign.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/config.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/lockfree/spsc\-\_\-queue.\-hpp$>$}\\*
{\ttfamily \#include $<$iostream$>$}\\*
{\ttfamily \#include $<$iterator$>$}\\*
{\ttfamily \#include $<$algorithm$>$}\\*
{\ttfamily \#include $<$numeric$>$}\\*
{\ttfamily \#include $<$ctime$>$}\\*
{\ttfamily \#include $<$boost/utility.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/graph/adjacency\-\_\-list.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/graph/topological\-\_\-sort.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/graph/depth\-\_\-first\-\_\-search.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/graph/dijkstra\-\_\-shortest\-\_\-paths.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/graph/visitors.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/foreach.\-hpp$>$}\\*
{\ttfamily \#include $<$boost/thread.\-hpp$>$}\\*
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}
\item 
struct \hyperlink{struct_threading_prototype_1_1_unit}{Unit}
\item 
class \hyperlink{class_threading_prototype_1_1_work_unit_producer}{Work\-Unit\-Producer}
\item 
class \hyperlink{class_threading_prototype_1_1_work_unit_consumer}{Work\-Unit\-Consumer}
\item 
class \hyperlink{class_threading_prototype_1_1_work_unit_producer2}{Work\-Unit\-Producer2}
\item 
class \hyperlink{class_threading_prototype_1_1_work_unit_consumer2}{Work\-Unit\-Consumer2}
\end{DoxyCompactItemize}
\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
\hyperlink{namespace_threading_prototype}{Threading\-Prototype}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef boost\-::shared\-\_\-ptr$<$ Unit $>$ \hyperlink{namespace_threading_prototype_a25cca5e7b0e3c435b6b9e453d0ab894a}{Unit\-Ptr}
\item 
typedef std\-::queue$<$ Unit\-Ptr $>$ \hyperlink{namespace_threading_prototype_ae4f9be24d90e260f28a57a911c39bc98}{Work\-Queue}
\item 
typedef std\-::list$<$ Unit\-Ptr $>$ \hyperlink{namespace_threading_prototype_a49929da290292f91da027c59c9919a28}{Waiting\-List}
\item 
typedef std\-::list$<$ Unit\-Ptr $>$ \hyperlink{namespace_threading_prototype_ad2354488e5c782fc1dd252391cbf0e1d}{Done\-List}
\item 
typedef boost\-::mutex \hyperlink{namespace_threading_prototype_a82190a5c38336b590fc82a18da0ae8a5}{Mutex}
\item 
typedef \\*
boost\-::lockfree\-::spsc\-\_\-queue\\*
$<$ Unit\-Ptr $>$ \hyperlink{namespace_threading_prototype_acfabe4e3778f39882c98237dbed753c8}{Work\-Queue2}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_a2b0b43908e51973c0613dcbf87d0942a}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Network\-From\-Matrix\-Calculator)
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_a4e5058cd25634d1cf3ad130c2d2bf423}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Can\-Detect\-Connection\-Cycles)
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_a63f78b5884185e9b83feb6b29fd793bf}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Network\-From\-Matrix\-Calculator\-Multi\-Threaded)
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_ac2d04350f356224489f3d93f54adb380}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Serial\-Network\-Order)
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_a618c690d85fb9f6f88bc17fab54d51d6}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Parallel\-Network\-Order)
\item 
\hyperlink{_scheduling_with_boost_graph_8cc_a17b82aa2649fa7336b6ff30d38fb285c}{T\-E\-S\-T\-\_\-\-F} (\hyperlink{class_scheduling_with_boost_graph}{Scheduling\-With\-Boost\-Graph}, Parallel\-Network\-Order\-With\-Some\-Modules\-Done)
\item 
bool \hyperlink{namespace_threading_prototype_aed3b8c8981aace6de462f4e0ce0e664d}{operator$<$} (const Unit \&lhs, const Unit \&rhs)
\item 
bool \hyperlink{namespace_threading_prototype_a57058498d3ac3d55806def67e367aac9}{operator$<$} (const Unit\-Ptr \&lhs, const Unit\-Ptr \&rhs)
\item 
std\-::ostream \& \hyperlink{namespace_threading_prototype_a20fa43c04c520e9ccf9fbca04a0045db}{operator$<$$<$} (std\-::ostream \&o, const Unit \&u)
\item 
\hyperlink{class_s_c_i_run_1_1_core_1_1_logging_1_1_log_1_1_stream}{Log\-::\-Stream} \& \hyperlink{namespace_threading_prototype_a6f39582d34904d22ed1515032f26b95e}{operator$<$$<$} (\hyperlink{class_s_c_i_run_1_1_core_1_1_logging_1_1_log_1_1_stream}{Log\-::\-Stream} \&o, const Unit \&u)
\item 
Unit\-Ptr \hyperlink{namespace_threading_prototype_acef81d0772024c195bd49bedf8d7751d}{make\-Unit} ()
\item 
std\-::ostream \& \hyperlink{namespace_threading_prototype_ac7cd17a7a6f426b56668d946a7be4698}{operator$<$$<$} (std\-::ostream \&o, const Unit\-Ptr \&u)
\item 
\hyperlink{namespace_threading_prototype_a3d0b9fbbb867433db379777003d8c21e}{T\-E\-S\-T} (Multi\-Executor\-Prototype\-Test, Generate\-List\-Of\-Units)
\item 
\hyperlink{namespace_threading_prototype_a5f40ded85abfef9999f6bb60615284de}{T\-E\-S\-T} (Multi\-Executor\-Prototype\-Test, D\-I\-S\-A\-B\-L\-E\-D\-\_\-\-Run1)
\item 
\hyperlink{namespace_threading_prototype_a2c6222c836317d3a23a861aee651464a}{T\-E\-S\-T} (Multi\-Executor\-Prototype\-Test, D\-I\-S\-A\-B\-L\-E\-D\-\_\-\-Run2)
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{_scheduling_with_boost_graph_8cc_a2b0b43908e51973c0613dcbf87d0942a}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Network\-From\-Matrix\-Calculator}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_a2b0b43908e51973c0613dcbf87d0942a}
\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{todo__todo000394}{Todo}]\-: let executor thread finish. should be an event generated or something. \end{DoxyRefDesc}
\hypertarget{_scheduling_with_boost_graph_8cc_a4e5058cd25634d1cf3ad130c2d2bf423}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Can\-Detect\-Connection\-Cycles}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_a4e5058cd25634d1cf3ad130c2d2bf423}
\hypertarget{_scheduling_with_boost_graph_8cc_a63f78b5884185e9b83feb6b29fd793bf}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Network\-From\-Matrix\-Calculator\-Multi\-Threaded}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_a63f78b5884185e9b83feb6b29fd793bf}
\begin{DoxyRefDesc}{Todo}
\item[\hyperlink{todo__todo000395}{Todo}]\-: let executor thread finish. should be an event generated or something. \end{DoxyRefDesc}
\hypertarget{_scheduling_with_boost_graph_8cc_ac2d04350f356224489f3d93f54adb380}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Serial\-Network\-Order}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_ac2d04350f356224489f3d93f54adb380}
\hypertarget{_scheduling_with_boost_graph_8cc_a618c690d85fb9f6f88bc17fab54d51d6}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Parallel\-Network\-Order}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_a618c690d85fb9f6f88bc17fab54d51d6}
\hypertarget{_scheduling_with_boost_graph_8cc_a17b82aa2649fa7336b6ff30d38fb285c}{\index{Scheduling\-With\-Boost\-Graph.\-cc@{Scheduling\-With\-Boost\-Graph.\-cc}!T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}}
\index{T\-E\-S\-T\-\_\-\-F@{T\-E\-S\-T\-\_\-\-F}!SchedulingWithBoostGraph.cc@{Scheduling\-With\-Boost\-Graph.\-cc}}
\subsubsection[{T\-E\-S\-T\-\_\-\-F}]{\setlength{\rightskip}{0pt plus 5cm}T\-E\-S\-T\-\_\-\-F (
\begin{DoxyParamCaption}
\item[{{\bf Scheduling\-With\-Boost\-Graph}}]{, }
\item[{Parallel\-Network\-Order\-With\-Some\-Modules\-Done}]{}
\end{DoxyParamCaption}
)}}\label{_scheduling_with_boost_graph_8cc_a17b82aa2649fa7336b6ff30d38fb285c}
