16 #include <deal.II/base/thread_management.h> 17 #include <deal.II/base/subscriptor.h> 18 #include <deal.II/base/logstream.h> 24 DEAL_II_NAMESPACE_OPEN
44 static const char *unknown_subscriber =
"unknown subscriber";
53 (void)unknown_subscriber;
100 if (std::uncaught_exception() ==
false)
102 std::string infostring;
106 infostring += std::string(
"\n from Subscriber ")
107 + std::string(it->first);
110 if (infostring ==
"")
111 infostring =
"<none>";
118 std::cerr <<
"---------------------------------------------------------" 120 <<
"An object pointed to by a SmartPointer is being destroyed." 122 <<
"Under normal circumstances, this would abort the program." 124 <<
"However, another exception is being processed at the" 126 <<
"moment, so the program will continue to run to allow" 128 <<
"this exception to be processed." 130 <<
"---------------------------------------------------------" 161 # ifndef DEAL_II_WITH_THREADS 162 const char *
const name = (
id != 0) ?
id : unknown_subscriber;
183 const char *name = (
id != 0) ?
id : unknown_subscriber;
193 # ifndef DEAL_II_WITH_THREADS 216 #ifndef DEAL_II_WITH_THREADS 219 deallog << it->second <<
'/' 220 <<
counter <<
" subscriptions from \"" 221 << it->first <<
'\"' << std::endl;
223 deallog <<
"No subscriber listing with multithreading" << std::endl;
227 DEAL_II_NAMESPACE_CLOSE
#define AssertNothrow(cond, exc)
const std::type_info * object_info
Subscriptor & operator=(const Subscriptor &)
DEAL_VOLATILE unsigned int counter
void subscribe(const char *identifier=0) const
void list_subscribers() const
unsigned int n_subscriptions() const
void unsubscribe(const char *identifier=0) const
std::map< const char *, unsigned int > counter_map
std::map< const char *, unsigned int >::iterator map_iterator
std::map< const char *, unsigned int >::value_type map_value_type