| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Public Attributes | Private Attributes | List of all members
concurrency::DataNode Class Reference

`#include <src/PrecedenceRulesGraph.h>`

Inheritance diagram for concurrency::DataNode:
[legend]
Collaboration diagram for concurrency::DataNode:
[legend]

## Public Member Functions
| DataNode (PrecedenceRulesGraph &graph, const DataObjID &path)
| Constructor. More...
const DataObjID & | getPath ()
bool | accept (IGraphVisitor &visitor)
| Entry point for a visitor. More...
void | addProducerNode (AlgorithmNode *node)
| Add relationship to producer AlgorithmNode. More...
void | addConsumerNode (AlgorithmNode *node)
| Add relationship to consumer AlgorithmNode. 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...

## Public Attributes
PrecedenceRulesGraph * | m_graph

## Private Attributes
DataObjID | m_data_object_path
std::vector< AlgorithmNode * > | m_producers
std::vector< AlgorithmNode * > | m_consumers

## Detailed Description

Definition at line 498 of file PrecedenceRulesGraph.h.

## Constructor & Destructor Documentation

concurrency::DataNode::DataNode | ( | PrecedenceRulesGraph & | graph,
|  | const DataObjID & | path
| ) |  |
| inline

Constructor.

Definition at line 502 of file PrecedenceRulesGraph.h.

502 : m_graph( &graph ), m_data_object_path( path ) {}
concurrency::DataNode::m_data_object_path
DataObjID m_data_object_path
Definition: PrecedenceRulesGraph.h:533
plotSpeedupsPyRoot.graph
graph
Definition: plotSpeedupsPyRoot.py:142
concurrency::DataNode::m_graph
PrecedenceRulesGraph * m_graph
Definition: PrecedenceRulesGraph.h:530

## Member Function Documentation

bool concurrency::DataNode::accept | ( | IGraphVisitor & | visitor | ) |
| inline

Entry point for a visitor.

Definition at line 507 of file PrecedenceRulesGraph.h.

508 {
509 if ( visitor.visitEnter( *this ) ) return visitor.visit( *this );
510 return true;
511 }

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

Add relationship to consumer AlgorithmNode.

Definition at line 519 of file PrecedenceRulesGraph.h.

520 {
521 if ( std::find( m_consumers.begin(), m_consumers.end(), node ) == m_consumers.end() )
522 m_consumers.push_back( node );
523 }
concurrency::DataNode::m_consumers
std::vector< AlgorithmNode * > m_consumers
Definition: PrecedenceRulesGraph.h:535
std::find
T find(T...args)

void concurrency::DataNode::addProducerNode | ( | AlgorithmNode * | node | ) |
| inline

Add relationship to producer AlgorithmNode.

Definition at line 513 of file PrecedenceRulesGraph.h.

514 {
515 if ( std::find( m_producers.begin(), m_producers.end(), node ) == m_producers.end() )
516 m_producers.push_back( node );
517 }
std::find
T find(T...args)
concurrency::DataNode::m_producers
std::vector< AlgorithmNode * > m_producers
Definition: PrecedenceRulesGraph.h:534

const std::vector<AlgorithmNode*>& concurrency::DataNode::getConsumers | ( |  | ) | const
| inline

Get all data object consumers.

Definition at line 527 of file PrecedenceRulesGraph.h.

527 { return m_consumers; }
concurrency::DataNode::m_consumers
std::vector< AlgorithmNode * > m_consumers
Definition: PrecedenceRulesGraph.h:535

const DataObjID& concurrency::DataNode::getPath | ( |  | ) |
| inline

Definition at line 504 of file PrecedenceRulesGraph.h.

504 { return m_data_object_path; }
concurrency::DataNode::m_data_object_path
DataObjID m_data_object_path
Definition: PrecedenceRulesGraph.h:533

const std::vector<AlgorithmNode*>& concurrency::DataNode::getProducers | ( |  | ) | const
| inline

Get all data object producers.

Definition at line 525 of file PrecedenceRulesGraph.h.

525 { return m_producers; }
concurrency::DataNode::m_producers
std::vector< AlgorithmNode * > m_producers
Definition: PrecedenceRulesGraph.h:534

## Member Data Documentation

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

Definition at line 535 of file PrecedenceRulesGraph.h.

DataObjID concurrency::DataNode::m_data_object_path
| private

Definition at line 533 of file PrecedenceRulesGraph.h.

PrecedenceRulesGraph* concurrency::DataNode::m_graph

Definition at line 530 of file PrecedenceRulesGraph.h.

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

Definition at line 534 of file PrecedenceRulesGraph.h.

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

- GaudiHive/src/PrecedenceRulesGraph.h