44 throw Exception(
"NotSimpleCasePoint::getFirstNode : error no branches !");
45 return _nodes.front()->getFirstNode();
51 throw Exception(
"NotSimpleCasePoint::getFirstNode : error no branches !");
52 return _nodes.back()->getLastNode();
58 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
59 ret=std::max(ret,(*it)->getMaxLevelOfParallelism());
66 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
68 (*it)->getWeightRegardingDPL(&localWeight);
76 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++)
77 (*it)->partitionRegardingDPL(pd,zeMap);
82 std::size_t sz(
_nodes.size()),ii(0);
84 for(std::list<AbstractPoint *>::const_iterator it=
_nodes.begin();it!=
_nodes.end();it++,ii++)
86 ret+=(*it)->getRepr();
104 throw YACS::Exception(
"NotSimpleCasePoint::expandNonSimpleCaseOn : ooops !");
void setFather(AbstractPoint *father)
void deepCopyFrom(const BlocPoint &other)
std::list< AbstractPoint * > _nodes
void addWeight(const ComplexWeight *other)
Base class for all composed nodes.
Base class for all nodes.
int getMaxLevelOfParallelism() const override
NotSimpleCasePoint()=default
void getWeightRegardingDPL(ComplexWeight *weight) override
Node * getFirstNode() override
AbstractPoint * expandNonSimpleCaseOn(NotSimpleCasePoint *pathologicalPt, const std::set< Node * > &uncatchedNodes) override
void accept(PointVisitor *pv) override
void partitionRegardingDPL(const PartDefinition *pd, std::map< ComposedNode *, YACS::BASES::AutoRefCnt< PartDefinition > > &zeMap) const override
std::string getRepr() const override
AbstractPoint * deepCopy(AbstractPoint *father) const override
Node * getLastNode() override
virtual void endNotSimpleCasePoint(NotSimpleCasePoint *pt)=0
virtual void beginNotSimpleCasePoint(NotSimpleCasePoint *pt)=0