While the old mechanism should continue to work, you should consider
upgrading. For more information on the signals mechanism, see the
documentation of the Triangulation class.
+
+In addition to the change above, the new implementation now offers two
+more signals one can subscribe to: Triangulation::Signals::clead for
+when the triangulation is cleared, and Triangulation::Signals::any_change
+that can be used for any operation that changes the mesh. Furthermore,
+in a change from previous behavior, the Triangulations::Signal::create
+signal is now also triggered when another triangulation is copied to
+the one that owns the signal.
<br>
(Wolfgang Bangerth, 2011/06/01)
* actions by which the triangulation can modify itself and potentially
* require follow-up action elsewhere:
* - creation: This signal is triggered whenever the
- * Triangulation::create_triangulation is called
+ * Triangulation::create_triangulation or Triangulation::copy_triangulation
+ * is called
* - pre-refinement: This signal is triggered at the beginning
* of execution of the Triangulation::execute_coarsening_and_refinement
* function (which is itself called by other functions such as
* @note Calling this function triggers
* the 'copy' signal on old_tria, i.e.
* the triangulation being copied <i>from</i>.
+ * It also triggers the 'create' signal of
+ * the current triangulation.
* See the section on signals in the
* general documentation for more information.
*
// inform RefinementListeners of old_tria of
// the copy operation
old_tria.signals.copy (*this);
+ // also inform all listeners that the
+ // triangulation has been created
+ signals.create();
// note that we need not copy the
// subscriptor!