concurrency::RankerByProductConsumption Class Reference

#include <src/EFGraphVisitors.h>

Inheritance diagram for concurrency::RankerByProductConsumption:
Collaboration diagram for concurrency::RankerByProductConsumption:

Public Member Functions

 RankerByProductConsumption ()
 Constructor. More...
 
 ~RankerByProductConsumption () override
 Destructor. More...
 
bool visitEnter (DecisionNode &) const override
 
bool visit (DecisionNode &) override
 
bool visitLeave (DecisionNode &) const override
 
bool visitEnter (AlgorithmNode &) const override
 
bool visit (AlgorithmNode &node) override
 
void reset () override
 
- Public Member Functions inherited from concurrency::IGraphVisitor
virtual ~IGraphVisitor ()
 

Additional Inherited Members

- Public Attributes inherited from concurrency::IGraphVisitor
int m_nodesSucceeded
 
int m_slotNum
 

Detailed Description

Definition at line 64 of file EFGraphVisitors.h.

Constructor & Destructor Documentation

concurrency::RankerByProductConsumption::RankerByProductConsumption ( )
inline

Constructor.

Definition at line 67 of file EFGraphVisitors.h.

67  {
68  m_nodesSucceeded = 0;
69  m_slotNum = -1;
70  };
concurrency::RankerByProductConsumption::~RankerByProductConsumption ( )
inlineoverride

Destructor.

Definition at line 72 of file EFGraphVisitors.h.

72 {}

Member Function Documentation

void concurrency::RankerByProductConsumption::reset ( )
inlineoverridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 86 of file EFGraphVisitors.h.

bool concurrency::RankerByProductConsumption::visit ( DecisionNode )
inlineoverridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 76 of file EFGraphVisitors.h.

76 {return true;}\
bool concurrency::RankerByProductConsumption::visit ( AlgorithmNode node)
overridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 154 of file EFGraphVisitors.cpp.

154  {
155 
156  auto& products = node.getOutputDataNodes();
157  float rank = 0;
158 
159  for (auto p : products)
160  rank += p->getConsumers().size();
161 
162  node.setRank(rank);
163  /*std::stringstream s;
164  s << node.getNodeName() << ", " << rank << "\n";
165  std::ofstream myfile;
166  myfile.open("AlgoRank.csv", std::ios::app);
167  myfile << s.str();
168  myfile.close();*/
169 
170  return true;
171  }
bool concurrency::RankerByProductConsumption::visitEnter ( DecisionNode ) const
inlineoverridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 74 of file EFGraphVisitors.h.

74 {return true;}
bool concurrency::RankerByProductConsumption::visitEnter ( AlgorithmNode ) const
inlineoverridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 81 of file EFGraphVisitors.h.

81 {return true;}
bool concurrency::RankerByProductConsumption::visitLeave ( DecisionNode ) const
inlineoverridevirtual

Implements concurrency::IGraphVisitor.

Definition at line 78 of file EFGraphVisitors.h.

78 {return true;}

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