change_functor Class Reference

#include <functor.h>

Inheritance diagram for change_functor:

change_functor_attribute_list change_functor_inventory_list

Public Member Functions

virtual ~change_functor ()
virtual void operator() (change::pointer cp)=0
bool include_branches () const
bool all_changes () const
virtual time_t earliest ()
virtual time_t latest ()
virtual bool recurse_branches ()

Protected Member Functions

 change_functor (bool include_branches, bool all_changes=false)
 change_functor (const change_functor &)
change_functoroperator= (const change_functor &)

Private Member Functions

 change_functor ()

Private Attributes

bool include_branches_flag
bool all_changes_flag

Detailed Description

The change_functor class is used to represent an abstract base class used to present object which look like callable functions which take a singe change::pointer argument.

Typically, this is used with the ... class to walk the changes of branch trees.

Definition at line 35 of file functor.h.


Constructor & Destructor Documentation

virtual change_functor::~change_functor (  )  [virtual]

The destructor.

change_functor::change_functor ( bool  include_branches,
bool  all_changes = false 
) [protected]

The constructor. May ony be called by a derived class.

change_functor::change_functor ( const change_functor  )  [protected]

The constructor. May ony be called by a derived class.

change_functor::change_functor (  )  [private]

The default constructor. Do not use.


Member Function Documentation

virtual void change_functor::operator() ( change::pointer  cp  )  [pure virtual]

The operator() method is used to call the functor.

Parameters:
cp The change to be operated upon.

Implemented in change_functor_attribute_list, and change_functor_inventory_list.

bool change_functor::include_branches (  )  const [inline]

The include_branches method is sued to determine whether or not the functor should also be invoked for branches, when performing a recursive descent.

Definition at line 56 of file functor.h.

bool change_functor::all_changes (  )  const [inline]

The all_changes method is used to determine whether or not the functor should be invoked for incomplete changes as well as completed changes and branches.

Definition at line 63 of file functor.h.

virtual time_t change_functor::earliest (  )  [virtual]

The earliest method is used to determine the earliest time of interest to the functor.

Returns:
time_t; the default implementation returns zero.

virtual time_t change_functor::latest (  )  [virtual]

The lastest method is used to determine the latest time of interest to the functor.

Returns:
time_t; the default implementation returns "now".

virtual bool change_functor::recurse_branches (  )  [virtual]

The recurse_branches method may be used to determine whether to recurse into nested branches or not.

Returns:
bool; true if recursion is desired, false if not. The default implementation returns true.

change_functor& change_functor::operator= ( const change_functor  )  [protected]

The assignment operator. May ony be called by a derived class.


Field Documentation

Definition at line 113 of file functor.h.

Definition at line 114 of file functor.h.


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

Generated on Wed Mar 12 23:37:39 2008 for Aegis by  doxygen 1.5.5