49 throw Exception(
"LinkedBlocPoint::getFirstNode : error no branches !");
50 return _nodes.front()->getFirstNode();
56 throw Exception(
"LinkedBlocPoint::getFirstNode : error no branches !");
57 return _nodes.back()->getLastNode();
63 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
64 ret=std::max(ret,(*it)->getMaxLevelOfParallelism());
71 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
73 (*it)->getWeightRegardingDPL(&localWeight);
81 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
82 (*it)->partitionRegardingDPL(pd,zeMap);
87 std::size_t sz(
_nodes.size()),ii(0);
89 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++,ii++)
91 ret+=(*it)->getRepr();
101 if(
anyOf(uncatchedNodes))
105 AbstractPoint *ret(it->expandNonSimpleCaseOn(pathologicalPt,uncatchedNodes));
118 std::list<AbstractPoint *>
l;
virtual AbstractPoint * deepCopy(AbstractPoint *father) const =0
AbstractPoint * getFather() const
void setFather(AbstractPoint *father)
void deepCopyFrom(const BlocPoint &other)
AbstractPoint * getUnique()
bool anyOf(const std::set< Node * > &nodes) const override
std::list< AbstractPoint * > _nodes
void addWeight(const ComplexWeight *other)
Base class for all composed nodes.
void accept(PointVisitor *pv) override
AbstractPoint * deepCopy(AbstractPoint *father) const override
LinkedBlocPoint()=default
virtual ~LinkedBlocPoint()
void getWeightRegardingDPL(ComplexWeight *weight)
void partitionRegardingDPL(const PartDefinition *pd, std::map< ComposedNode *, YACS::BASES::AutoRefCnt< PartDefinition > > &zeMap) const
AbstractPoint * expandNonSimpleCaseOn(NotSimpleCasePoint *pathologicalPt, const std::set< Node * > &uncatchedNodes) override
Node * getFirstNode() override
Node * getLastNode() override
std::string getRepr() const
int getMaxLevelOfParallelism() const
Base class for all nodes.
virtual void beginLinkedBlocPoint(LinkedBlocPoint *pt)=0
virtual void endLinkedBlocPoint(LinkedBlocPoint *pt)=0