Parma_Watchdog_Library::Handler_Flag< Flag_Base, Flag > Class Template Reference

A kind of Handler that installs a flag onto a flag-holder. More...

#include <pwl.hh>

Inherits Parma_Watchdog_Library::Handler.

List of all members.

Public Member Functions

 Handler_Flag (const Flag_Base *volatile &holder, Flag &flag)
 Constructor with a given function.
void act () const


Detailed Description

template<typename Flag_Base, typename Flag>
class Parma_Watchdog_Library::Handler_Flag< Flag_Base, Flag >

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

    int priority() const
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.


Member Function Documentation

template<typename Flag_Base , typename Flag >
void Parma_Watchdog_Library::Handler_Flag< Flag_Base, Flag >::act (  )  const [inline, virtual]

Does its job: installs the flag onto the holder, if a flag with an higher priority has not already been installed.

Implements Parma_Watchdog_Library::Handler.


The documentation for this class was generated from the following file:

Generated on Sat Apr 18 07:13:11 2009 for PWL by  doxygen 1.5.7.1