LAMA
|
This class is used for accessing a Context to enable computations on it. More...
#include <ContextAccess.hpp>
Public Member Functions | |
ContextAccess (ContextPtr context, const char *filename, int line) | |
Constructor for an access, enables the context. | |
~ContextAccess () | |
Destructor for an access, disables the context. | |
virtual void | release () |
Mandatory routine for each access class. | |
virtual void | writeAt (std::ostream &stream) const |
Override default routine of base class Printable. | |
Private Member Functions | |
LAMA_LOG_DECL_STATIC_LOGGER (logger) | |
ContextAccess () | |
Private Attributes | |
ContextPtr | mContext |
Pointer to the accessed context. | |
bool | mReleased |
true, if access has already been released | |
const char * | mFile |
file name of access | |
int | mLine |
line number of access |
This class is used for accessing a Context to enable computations on it.
This class guarantees that enable of a context is always followed by a disable of the context in case of exception.
Member variables contain source code location where access to the context was enabled.
lama::ContextAccess::ContextAccess | ( | ContextPtr | context, |
const char * | filename, | ||
int | line | ||
) |
Destructor for an access, disables the context.
References release().
lama::ContextAccess::ContextAccess | ( | ) | [private] |
lama::ContextAccess::LAMA_LOG_DECL_STATIC_LOGGER | ( | logger | ) | [private] |
void lama::ContextAccess::release | ( | ) | [virtual] |
Mandatory routine for each access class.
Implements lama::BaseAccess.
References mContext, mFile, mLine, and mReleased.
Referenced by ~ContextAccess().
void lama::ContextAccess::writeAt | ( | std::ostream & | stream | ) | const [virtual] |
Override default routine of base class Printable.
Reimplemented from lama::BaseAccess.
ContextPtr lama::ContextAccess::mContext [private] |
Pointer to the accessed context.
Referenced by ContextAccess(), release(), and writeAt().
const char* lama::ContextAccess::mFile [private] |
file name of access
Referenced by ContextAccess(), release(), and writeAt().
int lama::ContextAccess::mLine [private] |
line number of access
Referenced by ContextAccess(), release(), and writeAt().
bool lama::ContextAccess::mReleased [private] |
true, if access has already been released
Referenced by ContextAccess(), and release().