equal
deleted
inserted
replaced
73 |
73 |
74 |
74 |
75 public: |
75 public: |
76 |
76 |
77 SmartGraphBase() : nodes(), edges() { } |
77 SmartGraphBase() : nodes(), edges() { } |
78 SmartGraphBase(const SmartGraphBase &_g) : nodes(_g.nodes), edges(_g.edges) { } |
78 SmartGraphBase(const SmartGraphBase &_g) |
|
79 : nodes(_g.nodes), edges(_g.edges) { } |
79 |
80 |
80 typedef True NodeNumTag; |
81 typedef True NodeNumTag; |
81 typedef True EdgeNumTag; |
82 typedef True EdgeNumTag; |
82 |
83 |
83 ///Number of nodes. |
84 ///Number of nodes. |
312 ///\warning This functionality cannot be used together with the SnapShot |
313 ///\warning This functionality cannot be used together with the SnapShot |
313 ///feature. |
314 ///feature. |
314 ///\todo It could be implemented in a bit faster way. |
315 ///\todo It could be implemented in a bit faster way. |
315 Node split(Node n, bool connect = true) |
316 Node split(Node n, bool connect = true) |
316 { |
317 { |
317 return _split(n,connect); |
318 for (OutEdgeIt it(*this, n); it != INVALID; ++it) { |
|
319 getNotifier(Edge()).signalChange(it); |
|
320 } |
|
321 Node b = _split(n,connect); |
|
322 for (OutEdgeIt it(*this, b); it != INVALID; ++it) { |
|
323 getNotifier(Edge()).commitChange(it); |
|
324 } |
|
325 return b; |
318 } |
326 } |
319 |
327 |
320 |
328 |
321 ///Class to make a snapshot of the graph and to restrore to it later. |
329 ///Class to make a snapshot of the graph and to restrore to it later. |
322 |
330 |