concurrency::DataNode Class Reference

#include <src/PrecedenceRulesGraph.h>

Collaboration diagram for concurrency::DataNode:

Public Member Functions

 DataNode (PrecedenceRulesGraph &, const DataObjID &path)
 Constructor. More...
 
 ~DataNode ()
 Destructor. More...
 
const DataObjIDgetPath ()
 
void addProducerNode (AlgorithmNode *node)
 Associate an AlgorithmNode, which is a data supplier for this one. More...
 
void addConsumerNode (AlgorithmNode *node)
 Associate an AlgorithmNode, which is a data consumer of this one. More...
 
const std::vector< AlgorithmNode * > & getProducers () const
 Get all data object producers. More...
 
const std::vector< AlgorithmNode * > & getConsumers () const
 Get all data object consumers. More...
 

Private Attributes

DataObjID m_data_object_path
 
std::vector< AlgorithmNode * > m_producers
 
std::vector< AlgorithmNode * > m_consumers
 

Detailed Description

Definition at line 241 of file PrecedenceRulesGraph.h.

Constructor & Destructor Documentation

concurrency::DataNode::DataNode ( PrecedenceRulesGraph ,
const DataObjID path 
)
inline

Constructor.

Definition at line 244 of file PrecedenceRulesGraph.h.

244 : m_data_object_path(path) {}
concurrency::DataNode::~DataNode ( )
inline

Destructor.

Definition at line 246 of file PrecedenceRulesGraph.h.

246 {}

Member Function Documentation

void concurrency::DataNode::addConsumerNode ( AlgorithmNode node)
inline

Associate an AlgorithmNode, which is a data consumer of this one.

Definition at line 254 of file PrecedenceRulesGraph.h.

254  {
255  if (std::find(m_consumers.begin(),m_consumers.end(),node) == m_consumers.end())
256  m_consumers.push_back(node);
257  }
std::vector< AlgorithmNode * > m_consumers
T find(T...args)
void concurrency::DataNode::addProducerNode ( AlgorithmNode node)
inline

Associate an AlgorithmNode, which is a data supplier for this one.

Definition at line 249 of file PrecedenceRulesGraph.h.

249  {
250  if (std::find(m_producers.begin(),m_producers.end(),node) == m_producers.end())
251  m_producers.push_back(node);
252  }
T find(T...args)
std::vector< AlgorithmNode * > m_producers
const std::vector<AlgorithmNode*>& concurrency::DataNode::getConsumers ( ) const
inline

Get all data object consumers.

Definition at line 261 of file PrecedenceRulesGraph.h.

261 {return m_consumers;}
std::vector< AlgorithmNode * > m_consumers
const DataObjID& concurrency::DataNode::getPath ( )
inline

Definition at line 247 of file PrecedenceRulesGraph.h.

247 {return m_data_object_path;}
const std::vector<AlgorithmNode*>& concurrency::DataNode::getProducers ( ) const
inline

Get all data object producers.

Definition at line 259 of file PrecedenceRulesGraph.h.

259 {return m_producers;}
std::vector< AlgorithmNode * > m_producers

Member Data Documentation

std::vector<AlgorithmNode*> concurrency::DataNode::m_consumers
private

Definition at line 265 of file PrecedenceRulesGraph.h.

DataObjID concurrency::DataNode::m_data_object_path
private

Definition at line 263 of file PrecedenceRulesGraph.h.

std::vector<AlgorithmNode*> concurrency::DataNode::m_producers
private

Definition at line 264 of file PrecedenceRulesGraph.h.


The documentation for this class was generated from the following file: