CVC3  2.4.1
Public Member Functions | Private Attributes
CVC3::Context Class Reference

#include <context.h>

List of all members.

Public Member Functions

 Context (ContextManager *cm, const std::string &name, int id)
 ~Context ()
ContextManagergetCM () const
 Access methods.
const std::string & name () const
int id () const
ScopetopScope () const
ScopebottomScope () const
int level () const
void push ()
void pop ()
void popto (int toLevel)
void addNotifyObj (ContextNotifyObj *obj)
void deleteNotifyObj (ContextNotifyObj *obj)
unsigned long getMemory (int verbosity)

Private Attributes

ContextManagerd_cm
 Context Manager.
std::string d_name
 Name of context.
int d_id
 Context ID.
Scoped_topScope
 Pointer to top and bottom scopes of context.
Scoped_bottomScope
std::vector< ContextNotifyObj * > d_notifyObjList
 List of objects to notify with every pop.
std::vector
< ContextMemoryManager * > 
d_cmmStack
 Stack of free ContextMemoryManager's.

Detailed Description

Encapsulates the general notion of stack-based saving and restoring of a database.

Definition at line 306 of file context.h.


Constructor & Destructor Documentation

Context::Context ( ContextManager cm,
const std::string &  name,
int  id 
)

Definition at line 208 of file context.cpp.

References d_bottomScope, d_topScope, and TRACE.

Referenced by CVC3::ContextManager::createContext(), and getMemory().

Context::~Context ( )

Member Function Documentation

ContextManager* CVC3::Context::getCM ( ) const
inline

Access methods.

Definition at line 331 of file context.h.

const std::string& CVC3::Context::name ( ) const
inline

Definition at line 332 of file context.h.

int CVC3::Context::id ( ) const
inline

Definition at line 333 of file context.h.

Referenced by CVC3::ContextManager::switchContext().

Scope* CVC3::Context::topScope ( ) const
inline

Definition at line 334 of file context.h.

Referenced by popto().

Scope* CVC3::Context::bottomScope ( ) const
inline

Definition at line 335 of file context.h.

int CVC3::Context::level ( void  ) const
inline

Definition at line 336 of file context.h.

Referenced by pop(), and push().

void Context::push ( )

Definition at line 244 of file context.cpp.

References d_cmmStack, d_topScope, IF_DEBUG, level(), and TRACE.

void Context::pop ( )
void Context::popto ( int  toLevel)

Definition at line 296 of file context.cpp.

References CVC3::Scope::level(), pop(), and topScope().

void CVC3::Context::addNotifyObj ( ContextNotifyObj obj)
inline

Definition at line 341 of file context.h.

Referenced by CVC3::ContextNotifyObj::ContextNotifyObj().

void Context::deleteNotifyObj ( ContextNotifyObj obj)

Definition at line 302 of file context.cpp.

References d_notifyObjList.

unsigned long Context::getMemory ( int  verbosity)

Member Data Documentation

ContextManager* CVC3::Context::d_cm
private

Context Manager.

Definition at line 308 of file context.h.

std::string CVC3::Context::d_name
private

Name of context.

Definition at line 311 of file context.h.

Referenced by getMemory().

int CVC3::Context::d_id
private

Context ID.

Definition at line 314 of file context.h.

Scope* CVC3::Context::d_topScope
private

Pointer to top and bottom scopes of context.

Definition at line 317 of file context.h.

Referenced by Context(), getMemory(), pop(), push(), and ~Context().

Scope* CVC3::Context::d_bottomScope
private

Definition at line 318 of file context.h.

Referenced by Context().

std::vector<ContextNotifyObj*> CVC3::Context::d_notifyObjList
private

List of objects to notify with every pop.

Definition at line 321 of file context.h.

Referenced by deleteNotifyObj(), getMemory(), pop(), and ~Context().

std::vector<ContextMemoryManager*> CVC3::Context::d_cmmStack
private

Stack of free ContextMemoryManager's.

Definition at line 324 of file context.h.

Referenced by getMemory(), pop(), push(), and ~Context().


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