Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

SmartRefBase Class Reference

User example objects: SmartRefBase. More...

#include <SmartRefBase.h>

Inheritance diagram for SmartRefBase:

SmartRef List of all members.

Protected Methods

const ContainedObjectaccessData ( const ContainedObject* typ ) const
 Load on demand of ContainedObject like references. More...

const DataObjectaccessData ( const DataObject* typ ) const
 Load on demand of DataObject like references. More...

bool isEqual (const ContainedObject* , const SmartRefBase& c) const
 Equality operator for ContainedObject like references. More...

bool isEqual (const DataObject* , const SmartRefBase& c) const
 Equality operator for DataObject like references. More...

void writeObject (const DataObject* pObject, StreamBuffer& s) const
 Output streamer for DataObject like references. More...

void writeObject (const ContainedObject* pObject, StreamBuffer& s) const
 Output streamer for ContainedObject like references. More...

DataObjectreadObject (const DataObject* , StreamBuffer& s) const
 Input streamer for DataObject like references. More...

ContainedObjectreadObject (const ContainedObject* , StreamBuffer& s) const
 Output streamer for ContainedObject like references. More...


Protected Attributes

long m_hintID
 Object data: ID of the link hint to the identifiable object. More...

long m_linkID
 Object data: ID of the object within the identifiable container (if any). More...

const DataObjectm_data
 Object data: Pointer to the identifiable object the link originates. More...

const ContainedObjectm_contd
 Object data: Pointer to the Contained object (if applicable). More...


Detailed Description

User example objects: SmartRefBase.

Description: Base class of SmartReference objects. The base class handles the object requests to the data store. The separation of the SmartReference and the base class is mainly to avoid code blow up, because if the object is not yet present serious work must be performed in order to request the object from the store and invoke object updates to keep pointers in sync.

Base Class: None

Dependencies: None

History :

    +---------+----------------------------------------------+--------+
    |    Date |                 Comment                      | Who    |
    +---------+----------------------------------------------+--------+
    | 21/06/99| Initial version.                             | MF     |
    +---------+----------------------------------------------+--------+
    
Author: M.Frank Version: 1.0

Definition at line 47 of file SmartRefBase.h.


Member Function Documentation

const DataObject * SmartRefBase::accessData ( const DataObject * typ ) const [protected]
 

Load on demand of DataObject like references.

Definition at line 37 of file SmartRefBase.cpp.

const ContainedObject * SmartRefBase::accessData ( const ContainedObject * typ ) const [protected]
 

Load on demand of ContainedObject like references.

Definition at line 28 of file SmartRefBase.cpp.

Referenced by SmartRef::target().

bool SmartRefBase::isEqual ( const DataObject *,
const SmartRefBase & c ) const [inline, protected]
 

Equality operator for DataObject like references.

Definition at line 68 of file SmartRefBase.h.

bool SmartRefBase::isEqual ( const ContainedObject *,
const SmartRefBase & c ) const [inline, protected]
 

Equality operator for ContainedObject like references.

Definition at line 63 of file SmartRefBase.h.

Referenced by SmartRef::operator==().

ContainedObject * SmartRefBase::readObject ( const ContainedObject *,
StreamBuffer & s ) const [inline, protected]
 

Output streamer for ContainedObject like references.

Definition at line 86 of file SmartRefBase.h.

DataObject * SmartRefBase::readObject ( const DataObject *,
StreamBuffer & s ) const [inline, protected]
 

Input streamer for DataObject like references.

Definition at line 80 of file SmartRefBase.h.

Referenced by SmartRef::readRef().

void SmartRefBase::writeObject ( const ContainedObject * pObject,
StreamBuffer & s ) const [inline, protected]
 

Output streamer for ContainedObject like references.

Definition at line 76 of file SmartRefBase.h.

void SmartRefBase::writeObject ( const DataObject * pObject,
StreamBuffer & s ) const [inline, protected]
 

Output streamer for DataObject like references.

Definition at line 72 of file SmartRefBase.h.

Referenced by SmartRef::writeRef().


Member Data Documentation

const ContainedObject * SmartRefBase::m_contd [mutable, protected]
 

Object data: Pointer to the Contained object (if applicable).

Definition at line 56 of file SmartRefBase.h.

const DataObject * SmartRefBase::m_data [mutable, protected]
 

Object data: Pointer to the identifiable object the link originates.

Definition at line 54 of file SmartRefBase.h.

long SmartRefBase::m_hintID [mutable, protected]
 

Object data: ID of the link hint to the identifiable object.

Definition at line 50 of file SmartRefBase.h.

long SmartRefBase::m_linkID [mutable, protected]
 

Object data: ID of the object within the identifiable container (if any).

Definition at line 52 of file SmartRefBase.h.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:22:16 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000