Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

_ISharedObject Class Reference

This class is the internal implementation of a shared object (.so, .dll, ...). More...

#include <sharedobject.h>

Inheritance diagram for _ISharedObject:

Inheritance graph
[legend]
Collaboration diagram for _ISharedObject:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ~_ISharedObject ()
 Destructor will unregister at the module pool. (Ref counting!).

const char * error () const
 Get module load error; NULL ref on success.

const char * name () const
 Get name of shared object file:.

ModuleSymbol lookup (const char *symbol)
 Lookup a symbol.


Private Member Functions

 _ISharedObject (const _ISharedObject &)
 This class is not C++-safe. Do not use these:.

void operator= (const _ISharedObject &)
 _ISharedObject (GModule *m, const char *name)
 Please gererate SharedObjects using ModulePool::Load().


Private Attributes

GModule * module
 Module or NULL (error / module unloaded).

const char * mname
 File name or error string if module=NULL.


Friends

class LinkedList< _ISharedObject >
class ModulePool

Detailed Description

This class is the internal implementation of a shared object (.so, .dll, ...).

For internal use only.

Author:
Wolfgang Wieser ] wwieser (a) gmx <*> de [
Important: For a description on how to use the module system, see the docu for file pool.h.

Note:
You should NEVER use this class directly; always use the reference counting SharedObject.

Definition at line 79 of file sharedobject.h.


Constructor & Destructor Documentation

_ISharedObject::_ISharedObject const _ISharedObject  )  [private]
 

This class is not C++-safe. Do not use these:.

_ISharedObject::_ISharedObject GModule *  m,
const char *  name
[private]
 

Please gererate SharedObjects using ModulePool::Load().

Definition at line 35 of file sharedobject.cc.

_ISharedObject::~_ISharedObject  ) 
 

Destructor will unregister at the module pool. (Ref counting!).

Definition at line 45 of file sharedobject.cc.

References module, and ModulePool::unregister().


Member Function Documentation

const char* _ISharedObject::error  )  const [inline]
 

Get module load error; NULL ref on success.

Definition at line 100 of file sharedobject.h.

References mname, and module.

ModuleSymbol _ISharedObject::lookup const char *  symbol  ) 
 

Lookup a symbol.

Looks up the symbol with the passed name in the shared object.

Returns:
NULL pointer if not found (i.e. ModuleSymbol::ptr()==NULL).

Definition at line 22 of file sharedobject.cc.

References module, and SharedObject.

const char* _ISharedObject::name  )  const [inline]
 

Get name of shared object file:.

Definition at line 104 of file sharedobject.h.

References mname, and module.

Referenced by ModulePool::_unregister().

void _ISharedObject::operator= const _ISharedObject  )  [private]
 


Friends And Related Function Documentation

friend class LinkedList< _ISharedObject > [friend]
 

Definition at line 84 of file sharedobject.h.

friend class ModulePool [friend]
 

Definition at line 85 of file sharedobject.h.


Member Data Documentation

const char* _ISharedObject::mname [private]
 

File name or error string if module=NULL.

Definition at line 88 of file sharedobject.h.

Referenced by ModulePool::_FindObjectByName(), error(), and name().

GModule* _ISharedObject::module [private]
 

Module or NULL (error / module unloaded).

Definition at line 87 of file sharedobject.h.

Referenced by ModulePool::_unregister(), error(), lookup(), name(), and ~_ISharedObject().


The documentation for this class was generated from the following files:
Generated on Sat Feb 19 22:35:20 2005 for Ray by doxygen 1.3.5