PPL
1.2
|
A kind of Handler that installs a flag onto a flag-holder. More...
#include <ppl.hh>
Public Member Functions | |
Handler_Flag (const Flag_Base *volatile &holder, Flag &flag) | |
Constructor with a given function. | |
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. | |
![]() | |
virtual | ~Handler () |
Virtual destructor. | |
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.