Version: 8.3.0
YACS::ENGINE::LinkedBlocPoint Class Reference

#include <LinkedBlocPoint.hxx>

Inheritance diagram for YACS::ENGINE::LinkedBlocPoint:
Collaboration diagram for YACS::ENGINE::LinkedBlocPoint:

Public Member Functions

 LinkedBlocPoint (const std::list< AbstractPoint * > &nodes, AbstractPoint *father)
 
NodegetFirstNode ()
 
NodegetLastNode ()
 
int getMaxLevelOfParallelism () const
 
std::string getRepr () const
 
virtual ~LinkedBlocPoint ()
 
- Public Member Functions inherited from YACS::ENGINE::BlocPoint
 BlocPoint (const std::list< AbstractPoint * > &nodes, AbstractPoint *father)
 
AbstractPointfindPointWithNode (Node *node)
 
AbstractPointgetNodeAfter (Node *node)
 
AbstractPointgetNodeB4 (Node *node)
 
bool contains (Node *node)
 
int getNumberOfNodes () const
 
const std::list< AbstractPoint * > & getListOfPoints () const
 
virtual ~BlocPoint ()
 
- Public Member Functions inherited from YACS::ENGINE::AbstractPoint
 AbstractPoint (AbstractPoint *father)
 
AbstractPointgetFather () const
 
AbstractPointgetGodFather ()
 
bool amIGod ()
 
void setFather (AbstractPoint *father)
 
bool isBegin ()
 
bool isLast ()
 
bool isSimplyLinkedBeforeAfter (BlocPoint *sop)
 
bool isSimplyLinkedAfterNullBefore (BlocPoint *sop)
 
bool isSimplyLinkedBeforeNullAfter (BlocPoint *sop)
 
LinkedBlocPointtryAsLink (BlocPoint *sop)
 
ForkBlocPointtryAsFork (BlocPoint *sop)
 
ForkBlocPointtryAsForkBis (BlocPoint *sop)
 
ForkBlocPointtryAsForkTer (BlocPoint *sop)
 
virtual ~AbstractPoint ()
 
bool isSimplyLinkedAfter (BlocPoint *sop, Node *node)
 
bool isSimplyLinkedBefore (BlocPoint *sop, Node *node)
 

Additional Inherited Members

- Static Public Member Functions inherited from YACS::ENGINE::AbstractPoint
static bool IsGatherB4Ext (Node *node)
 
static bool IsSimplyLinkedAfterExt (Node *node)
 
static bool IsScatterAfterExt (Node *node)
 
static bool IsSimplyLinkedBeforeExt (Node *node)
 
static bool IsNoLinksBefore (Node *node)
 
static bool IsNoLinksAfter (Node *node)
 
static NodeGetNodeB4 (Node *node)
 
static NodeGetNodeAfter (Node *node)
 
static AbstractPointGetDirectSonOf (AbstractPoint *refFather, AbstractPoint *sonOrLittleSon)
 
static bool IsCommonDirectSonOf (AbstractPoint *refFather, const std::list< OutGate * > &outgs, AbstractPoint *&ret)
 
static bool IsCommonDirectSonOf (AbstractPoint *refFather, const std::list< InGate * > &ings, AbstractPoint *&ret)
 
- Protected Attributes inherited from YACS::ENGINE::BlocPoint
std::list< AbstractPoint * > _nodes
 

Detailed Description

Definition at line 32 of file LinkedBlocPoint.hxx.

Constructor & Destructor Documentation

LinkedBlocPoint::LinkedBlocPoint ( const std::list< AbstractPoint * > &  nodes,
AbstractPoint father 
)

Definition at line 25 of file LinkedBlocPoint.cxx.

25  :BlocPoint(nodes,father)
26 {
27 }
LinkedBlocPoint::~LinkedBlocPoint ( )
virtual

Definition at line 65 of file LinkedBlocPoint.cxx.

66 {
67 }

Member Function Documentation

Node * LinkedBlocPoint::getFirstNode ( )
virtual

Implements YACS::ENGINE::AbstractPoint.

Definition at line 29 of file LinkedBlocPoint.cxx.

References YACS::ENGINE::BlocPoint::_nodes.

30 {
31  if(_nodes.empty())
32  throw Exception("LinkedBlocPoint::getFirstNode : error no branches !");
33  return _nodes.front()->getFirstNode();
34 }
Node * LinkedBlocPoint::getLastNode ( )
virtual

Implements YACS::ENGINE::AbstractPoint.

Definition at line 36 of file LinkedBlocPoint.cxx.

References YACS::ENGINE::BlocPoint::_nodes.

37 {
38  if(_nodes.empty())
39  throw Exception("LinkedBlocPoint::getFirstNode : error no branches !");
40  return _nodes.back()->getLastNode();
41 }
int LinkedBlocPoint::getMaxLevelOfParallelism ( ) const
virtual

Implements YACS::ENGINE::AbstractPoint.

Definition at line 43 of file LinkedBlocPoint.cxx.

References YACS::ENGINE::BlocPoint::_nodes, and PMMLBasicsTestLauncher::ret.

44 {
45  int ret(0);
46  for(std::list<AbstractPoint *>::const_iterator it=_nodes.begin();it!=_nodes.end();it++)
47  ret=std::max(ret,(*it)->getMaxLevelOfParallelism());
48  return ret;
49 }
std::string LinkedBlocPoint::getRepr ( ) const
virtual

Implements YACS::ENGINE::AbstractPoint.

Definition at line 51 of file LinkedBlocPoint.cxx.

References YACS::ENGINE::BlocPoint::_nodes, and PMMLBasicsTestLauncher::ret.

52 {
53  std::size_t sz(_nodes.size()),ii(0);
54  std::string ret("(");
55  for(std::list<AbstractPoint *>::const_iterator it=_nodes.begin();it!=_nodes.end();it++,ii++)
56  {
57  ret+=(*it)->getRepr();
58  if(ii!=sz-1)
59  ret+="+";
60  }
61  ret+=")";
62  return ret;
63 }

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