19 #ifndef _FUEL_CELL_APPLICATION_CORE_EVENT_H_
20 #define _FUEL_CELL_APPLICATION_CORE_EVENT_H_
27 namespace ApplicationCore
110 template<
typename OS>
111 void print(OS& os)
const;
116 template<
typename OS>
138 static std::vector<std::string>
names;
bool all_true
Sometimes, actions have to be taken by all means.
Definition: event.h:128
static std::vector< std::string > names
The actual list of names of events.
Definition: event.h:138
static void print_assigned(OS &os)
List the names to a stream.
Event & operator+=(const Event &other)
Add the flags of the other Event object.
void print(OS &os) const
List the flags to a stream.
Event()
Constructor, generating a clear Event object with all flags set to false.
void all()
Set all flags to true.
bool any() const
Return true if any event is set to true.
Event & operator-=(const Event &other)
Clear the flags of the other Event object.
std::vector< bool > flags
The actual list of events.
Definition: event.h:133
Objects of this kind are used to notify interior applications of changes provoked by an outer loop...
Definition: event.h:51
static Event assign(const char *name)
This function registers a new event type and assigns a unique identifier to it.
bool test(const Event &other) const
Test whether all the flags set to true in the other Event object are also set to true in this one...
void clear()
Set all flags to false.