PPL
1.2
|
A kind of Handler that installs a flag onto a flag-holder. More...
#include <Handler_defs.hh>
Public Member Functions | |
Handler_Flag (const Flag_Base *volatile &holder, Flag &flag) | |
Constructor with a given function. More... | |
virtual void | act () const |
Does its job: installs the flag onto the holder, if a flag with an higher priority has not already been installed. More... | |
![]() | |
virtual | ~Handler () |
Virtual destructor. More... | |
Private Attributes | |
const Flag_Base *volatile & | h |
Flag & | f |
A kind of Handler that installs a flag onto a flag-holder.
The template class Handler_Flag<Flag_Base, Flag>
is an handler whose job is to install a flag onto an holder for the flag. The flag is of type Flag
and the holder is a (volatile) pointer to Flag_Base
. Installing the flag onto the holder means making the holder point to the flag, so that it must be possible to assign a value of type Flag*
to an entity of type Flag_Base*
. The class Flag
must provide the method
returning an integer priority associated to the flag.
The handler will install its flag onto the holder only if the holder is empty, namely, it is the null pointer, or if the holder holds a flag of strictly lower priority.
Definition at line 61 of file Handler_defs.hh.
Parma_Polyhedra_Library::Implementation::Watchdog::Handler_Flag< Flag_Base, Flag >::Handler_Flag | ( | const Flag_Base *volatile & | holder, |
Flag & | flag | ||
) |
Constructor with a given function.
Definition at line 34 of file Handler_inlines.hh.
|
virtual |
Does its job: installs the flag onto the holder, if a flag with an higher priority has not already been installed.
Implements Parma_Polyhedra_Library::Implementation::Watchdog::Handler.
Definition at line 41 of file Handler_inlines.hh.
|
private |
Definition at line 76 of file Handler_defs.hh.
|
private |
Definition at line 75 of file Handler_defs.hh.