16 #ifndef dealii__subscriptor_h 17 #define dealii__subscriptor_h 20 #include <deal.II/base/config.h> 21 #include <deal.II/base/exceptions.h> 27 DEAL_II_NAMESPACE_OPEN
89 void subscribe (
const char *identifier = 0)
const;
97 void unsubscribe (
const char *identifier = 0)
const;
120 int,
char *, std::string &,
121 <<
"Object of class " << arg2
122 <<
" is still used by " << arg1 <<
" other objects." 124 <<
"(Additional information: " << arg3 <<
")\n\n" 125 <<
"See the entry in the Frequently Asked Questions of " 126 <<
"deal.II (linked to from http://www.dealii.org/) for " 127 <<
"a lot more information on what this error means and " 128 <<
"how to fix programs in which it happens.");
135 <<
"No subscriber with identifier <" << arg2
136 <<
"> subscribes to this object of class " << arg1
137 <<
". Consequently, it cannot be unsubscribed.");
152 template <
class Archive>
153 void serialize(Archive &ar,
const unsigned int version);
159 typedef std::map<const char *, unsigned int>::value_type
165 typedef std::map<const char *, unsigned int>::iterator
203 template <
class Archive>
213 DEAL_II_NAMESPACE_CLOSE
DeclException2(ExcNoSubscriber, char *, char *,<< "No subscriber with identifier <"<< arg2<< "> subscribes to this object of class "<< arg1<< ". Consequently, it cannot be unsubscribed.")
const std::type_info * object_info
DeclException3(ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects."<< "\"<< "(Additional information: "<< arg3<< ")\"<< "See the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "a lot more information on what this error means and "<< "how to fix programs in which it happens.")
Subscriptor & operator=(const Subscriptor &)
DEAL_VOLATILE unsigned int counter
void subscribe(const char *identifier=0) const
void list_subscribers() const
void serialize(Archive &ar, const unsigned int version)
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