SCIRun  5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Typedefs | Functions
SchedulingWithBoostGraph.cc File Reference
#include <gtest/gtest.h>
#include <gmock/gmock.h>
#include <Dataflow/Network/Network.h>
#include <Dataflow/Network/ModuleInterface.h>
#include <Dataflow/Network/ModuleStateInterface.h>
#include <Dataflow/Network/ConnectionId.h>
#include <Core/Datatypes/DenseMatrix.h>
#include <Modules/Basic/SendTestMatrix.h>
#include <Modules/Basic/ReceiveTestMatrix.h>
#include <Modules/Math/EvaluateLinearAlgebraUnary.h>
#include <Modules/Factory/HardCodedModuleFactory.h>
#include <Core/Algorithms/Math/EvaluateLinearAlgebraUnaryAlgo.h>
#include <Core/Algorithms/Math/EvaluateLinearAlgebraBinaryAlgo.h>
#include <Core/Algorithms/Math/ReportMatrixInfo.h>
#include <Dataflow/Network/Tests/MockModuleState.h>
#include <Dataflow/State/SimpleMapModuleState.h>
#include <Dataflow/Engine/Scheduler/BoostGraphSerialScheduler.h>
#include <Dataflow/Engine/Scheduler/LinearSerialNetworkExecutor.h>
#include <Dataflow/Engine/Scheduler/BoostGraphParallelScheduler.h>
#include <Dataflow/Engine/Scheduler/BasicMultithreadedNetworkExecutor.h>
#include <Dataflow/Engine/Scheduler/BasicParallelExecutionStrategy.h>
#include <Core/Algorithms/Factory/HardCodedAlgorithmFactory.h>
#include <Core/Algorithms/Base/AlgorithmVariableNames.h>
#include <Core/Logging/Log.h>
#include <boost/assign.hpp>
#include <boost/config.hpp>
#include <boost/lockfree/spsc_queue.hpp>
#include <iostream>
#include <iterator>
#include <algorithm>
#include <numeric>
#include <ctime>
#include <boost/utility.hpp>
#include <boost/graph/adjacency_list.hpp>
#include <boost/graph/topological_sort.hpp>
#include <boost/graph/depth_first_search.hpp>
#include <boost/graph/dijkstra_shortest_paths.hpp>
#include <boost/graph/visitors.hpp>
#include <boost/foreach.hpp>
#include <boost/thread.hpp>

Classes

class  SchedulingWithBoostGraph
 
struct  Unit
 
class  WorkUnitProducer
 
class  WorkUnitConsumer
 
class  WorkUnitProducer2
 
class  WorkUnitConsumer2
 

Namespaces

 ThreadingPrototype
 

Typedefs

typedef boost::shared_ptr< Unit > UnitPtr
 
typedef std::queue< UnitPtr > WorkQueue
 
typedef std::list< UnitPtr > WaitingList
 
typedef std::list< UnitPtr > DoneList
 
typedef boost::mutex Mutex
 
typedef
boost::lockfree::spsc_queue
< UnitPtr > 
WorkQueue2
 

Functions

 TEST_F (SchedulingWithBoostGraph, NetworkFromMatrixCalculator)
 
 TEST_F (SchedulingWithBoostGraph, CanDetectConnectionCycles)
 
 TEST_F (SchedulingWithBoostGraph, NetworkFromMatrixCalculatorMultiThreaded)
 
 TEST_F (SchedulingWithBoostGraph, SerialNetworkOrder)
 
 TEST_F (SchedulingWithBoostGraph, ParallelNetworkOrder)
 
 TEST_F (SchedulingWithBoostGraph, ParallelNetworkOrderWithSomeModulesDone)
 
bool operator< (const Unit &lhs, const Unit &rhs)
 
bool operator< (const UnitPtr &lhs, const UnitPtr &rhs)
 
std::ostream & operator<< (std::ostream &o, const Unit &u)
 
Log::Streamoperator<< (Log::Stream &o, const Unit &u)
 
UnitPtr makeUnit ()
 
std::ostream & operator<< (std::ostream &o, const UnitPtr &u)
 
 TEST (MultiExecutorPrototypeTest, GenerateListOfUnits)
 
 TEST (MultiExecutorPrototypeTest, DISABLED_Run1)
 
 TEST (MultiExecutorPrototypeTest, DISABLED_Run2)
 

Function Documentation

TEST_F ( SchedulingWithBoostGraph  ,
NetworkFromMatrixCalculator   
)
Todo:
: let executor thread finish. should be an event generated or something.
TEST_F ( SchedulingWithBoostGraph  ,
CanDetectConnectionCycles   
)
TEST_F ( SchedulingWithBoostGraph  ,
NetworkFromMatrixCalculatorMultiThreaded   
)
Todo:
: let executor thread finish. should be an event generated or something.
TEST_F ( SchedulingWithBoostGraph  ,
SerialNetworkOrder   
)
TEST_F ( SchedulingWithBoostGraph  ,
ParallelNetworkOrder   
)
TEST_F ( SchedulingWithBoostGraph  ,
ParallelNetworkOrderWithSomeModulesDone   
)