| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

LinkManager::Link Class Reference

Embeeded class defining a symbolic link Note: No copy constructor; bitwise copy (done by the compiler) is just fine. More...

#include <LinkManager.h>

Collaboration diagram for LinkManager::Link:

[legend]
List of all members.

Public Member Functions

 Link (long id, const std::string &path, const DataObject *pObject=0)
 Standard constructor.
 Link ()
 Standard constructor.
Linkoperator= (const Link &link)
 Equality operator: check pathes only.
virtual ~Link ()
 Default destructor.
void set (long id, const std::string &path, const DataObject *pObject)
 Update the link content.
bool operator== (const Link &link) const
 Equality operator: check pathes only.
void setObject (const DataObject *pObject)
 Update object pointer.
DataObjectobject () const
 Const access to data object.
const std::string & path () const
 Access to path of object.
long ID () const
 Link identifier.
virtual IOpaqueAddressaddress ()
 Access to the object's address.

Protected Attributes

std::string m_path
 String containing path of symbolic link.
DataObjectm_pObject
 Pointer to object behind the link.
long m_id
 Link ID.

Friends

class LinkManager
 DataObject is a friend.

Detailed Description

Embeeded class defining a symbolic link Note: No copy constructor; bitwise copy (done by the compiler) is just fine.

Definition at line 28 of file LinkManager.h.


Constructor & Destructor Documentation

LinkManager::Link::Link ( long  id,
const std::string &  path,
const DataObject pObject = 0 
) [inline]

Standard constructor.

Definition at line 40 of file LinkManager.h.

00041     : m_path(path), m_id(id) {
00042       setObject(pObject);
00043     }

LinkManager::Link::Link (  )  [inline]

Standard constructor.

Definition at line 45 of file LinkManager.h.

00045            : m_path(""), m_pObject(0), m_id(INVALID) {
00046     }

virtual LinkManager::Link::~Link (  )  [inline, virtual]

Default destructor.

Definition at line 55 of file LinkManager.h.

00055                     {
00056     }


Member Function Documentation

Link& LinkManager::Link::operator= ( const Link link  )  [inline]

Equality operator: check pathes only.

Definition at line 48 of file LinkManager.h.

00048                                        {
00049       setObject(link.m_pObject);
00050       m_path = link.m_path;
00051       m_id   = link.m_id;
00052       return *this;
00053     }

void LinkManager::Link::set ( long  id,
const std::string &  path,
const DataObject pObject 
) [inline]

Update the link content.

Definition at line 58 of file LinkManager.h.

00058                                                                           {
00059       setObject(pObject);
00060       m_path = path;
00061       m_id   = id;
00062     }

bool LinkManager::Link::operator== ( const Link link  )  const [inline]

Equality operator: check pathes only.

Definition at line 64 of file LinkManager.h.

00064                                               {
00065       return link.m_path == m_path;
00066     }

void LinkManager::Link::setObject ( const DataObject pObject  )  [inline]

Update object pointer.

Definition at line 68 of file LinkManager.h.

00068                                                 {
00069       m_pObject = const_cast<DataObject*>(pObject);
00070     }

DataObject* LinkManager::Link::object (  )  const [inline]

Const access to data object.

Definition at line 72 of file LinkManager.h.

00072                                  {
00073       return m_pObject;
00074     }

const std::string& LinkManager::Link::path (  )  const [inline]

Access to path of object.

Definition at line 76 of file LinkManager.h.

00076                                       {
00077       return m_path;
00078     }

long LinkManager::Link::ID (  )  const [inline]

Link identifier.

Definition at line 80 of file LinkManager.h.

00080                         {
00081       return m_id;
00082     }

virtual IOpaqueAddress* LinkManager::Link::address (  )  [virtual]

Access to the object's address.


Friends And Related Function Documentation

friend class LinkManager [friend]

DataObject is a friend.

Definition at line 30 of file LinkManager.h.


Member Data Documentation

std::string LinkManager::Link::m_path [protected]

String containing path of symbolic link.

Definition at line 33 of file LinkManager.h.

DataObject* LinkManager::Link::m_pObject [protected]

Pointer to object behind the link.

Definition at line 35 of file LinkManager.h.

long LinkManager::Link::m_id [protected]

Link ID.

Definition at line 37 of file LinkManager.h.


The documentation for this class was generated from the following file:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:57:12 2011 for GaudiKernel by doxygen 1.4.7