Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
ibis::util::guardBase Class Reference

A class hierarchy for cleaning up after durable resources. More...

#include <util.h>

Inheritance diagram for ibis::util::guardBase:
ibis::util::guardImpl0< F > ibis::util::guardImpl1< F, A > ibis::util::guardImpl2< F, A1, A2 > ibis::util::guardObj0< C, F >

List of all members.

Public Member Functions

void dismiss () const
 Tell the guard that it does not need to invoke clean up function any more.

Protected Member Functions

 guardBase (const guardBase &rhs)
 Default constructor.
 ~guardBase ()
 Destructor. No need to be virtual.

Static Protected Member Functions

template<typename T >
static void cleanup (T &task) throw ()
 A template to invoke the function registered.

Protected Attributes

volatile bool done_

Detailed Description

A class hierarchy for cleaning up after durable resources.

It follows the example set by Loki::ScopeGuard, but simpler.


Constructor & Destructor Documentation

ibis::util::guardBase::guardBase ( const guardBase rhs) [inline, protected]

Default constructor.

Copy constructor. Allows all derived classes to use the compiler generated copy constructors.

References dismiss().


Member Function Documentation

template<typename T >
static void ibis::util::guardBase::cleanup ( T &  task) throw () [inline, static, protected]
void ibis::util::guardBase::dismiss ( ) const [inline]

Tell the guard that it does not need to invoke clean up function any more.

Referenced by ibis::blob::append(), ibis::bord::evaluateTerms(), guardBase(), ibis::part::reorderValues(), ibis::blob::writeData(), and ibis::bord::xgroupby().


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

Make It A Bit Faster
Contact us
Disclaimers
FastBit source code
FastBit mailing list archive