All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GenericAddress Class Reference

Generic Transient Address. More...

#include <GaudiKernel/GenericAddress.h>

Inheritance diagram for GenericAddress:
Collaboration diagram for GenericAddress:

Public Member Functions

 GenericAddress ()
 Dummy constructor. More...
 
 GenericAddress (const GenericAddress &copy)
 Standard Constructor. More...
 
 GenericAddress (long svc, const CLID &clid, const std::string &p1="", const std::string &p2="", unsigned long ip1=0, unsigned long ip2=0)
 Standard Constructor. More...
 
virtual ~GenericAddress ()
 Standard Destructor. More...
 
virtual unsigned long addRef ()
 Add reference to object. More...
 
virtual unsigned long release ()
 release reference to object More...
 
virtual IRegistryregistry () const
 Pointer to directory. More...
 
virtual void setRegistry (IRegistry *pRegistry)
 Set pointer to directory. More...
 
const CLIDclID () const
 Access : Retrieve class ID of the link. More...
 
void setClID (const CLID &clid)
 Access : Set class ID of the link. More...
 
long svcType () const
 Access : retrieve the storage type of the class id. More...
 
void setSvcType (long typ)
 Access : set the storage type of the class id. More...
 
virtual const std::string * par () const
 Retrieve string parameters. More...
 
virtual const unsigned long * ipar () const
 Retrieve integer parameters. More...
 
- Public Member Functions inherited from IOpaqueAddress
virtual ~IOpaqueAddress ()
 destructor More...
 

Protected Attributes

unsigned long m_refCount
 Reference count. More...
 
long m_svcType
 Storage type. More...
 
CLID m_clID
 Class id. More...
 
std::string m_par [3]
 String parameters to be accessed. More...
 
unsigned long m_ipar [2]
 Integer parameters to be accessed. More...
 
IRegistrym_pRegistry
 Pointer to corresponding directory. More...
 

Detailed Description

Generic Transient Address.

The generic transient address describes the recipe to load/save a persistent object from/to its transient representation.

Author
Markus Frank
Version
1.0

Definition at line 21 of file GenericAddress.h.

Constructor & Destructor Documentation

GenericAddress::GenericAddress ( )
inline

Dummy constructor.

Definition at line 38 of file GenericAddress.h.

39  : m_refCount(0),
40  m_svcType(0),
41  m_clID(0),
42  m_pRegistry(0)
43  {
44  m_ipar[0]=m_ipar[1]=0xFFFFFFFF;
45  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
long m_svcType
Storage type.
IRegistry * m_pRegistry
Pointer to corresponding directory.
CLID m_clID
Class id.
unsigned long m_refCount
Reference count.
GenericAddress::GenericAddress ( const GenericAddress copy)
inline

Standard Constructor.

Definition at line 47 of file GenericAddress.h.

48  : IOpaqueAddress(copy),
49  m_refCount(0),
50  m_svcType(copy.m_svcType),
51  m_clID(copy.m_clID),
53  {
54  m_par[0] = copy.m_par[0];
55  m_par[1] = copy.m_par[1];
56  m_ipar[0] = copy.m_ipar[0];
57  m_ipar[1] = copy.m_ipar[1];
58  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
long m_svcType
Storage type.
IRegistry * m_pRegistry
Pointer to corresponding directory.
std::string m_par[3]
String parameters to be accessed.
CLID m_clID
Class id.
unsigned long m_refCount
Reference count.
Opaque address interface definition.
GenericAddress::GenericAddress ( long  svc,
const CLID clid,
const std::string &  p1 = "",
const std::string &  p2 = "",
unsigned long  ip1 = 0,
unsigned long  ip2 = 0 
)
inline

Standard Constructor.

Definition at line 60 of file GenericAddress.h.

66  : m_refCount(0),
67  m_svcType(svc),
68  m_clID(clid),
69  m_pRegistry(0)
70  {
71  m_par[0] = p1;
72  m_par[1] = p2;
73  m_ipar[0] = ip1;
74  m_ipar[1] = ip2;
75  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
long m_svcType
Storage type.
IRegistry * m_pRegistry
Pointer to corresponding directory.
std::string m_par[3]
String parameters to be accessed.
CLID m_clID
Class id.
unsigned long m_refCount
Reference count.
virtual GenericAddress::~GenericAddress ( )
inlinevirtual

Standard Destructor.

Definition at line 78 of file GenericAddress.h.

78  {
79  }

Member Function Documentation

virtual unsigned long GenericAddress::addRef ( )
inlinevirtual

Add reference to object.

Implements IOpaqueAddress.

Definition at line 82 of file GenericAddress.h.

82  {
83  return ++m_refCount;
84  }
unsigned long m_refCount
Reference count.
const CLID& GenericAddress::clID ( ) const
inlinevirtual

Access : Retrieve class ID of the link.

Implements IOpaqueAddress.

Definition at line 102 of file GenericAddress.h.

102  {
103  return m_clID;
104  }
CLID m_clID
Class id.
virtual const unsigned long* GenericAddress::ipar ( ) const
inlinevirtual

Retrieve integer parameters.

Implements IOpaqueAddress.

Definition at line 122 of file GenericAddress.h.

122  {
123  return m_ipar;
124  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
virtual const std::string* GenericAddress::par ( ) const
inlinevirtual

Retrieve string parameters.

Implements IOpaqueAddress.

Definition at line 118 of file GenericAddress.h.

118  {
119  return m_par;
120  }
std::string m_par[3]
String parameters to be accessed.
virtual IRegistry* GenericAddress::registry ( ) const
inlinevirtual

Pointer to directory.

Implements IOpaqueAddress.

Definition at line 94 of file GenericAddress.h.

94  {
95  return m_pRegistry;
96  }
IRegistry * m_pRegistry
Pointer to corresponding directory.
virtual unsigned long GenericAddress::release ( )
inlinevirtual

release reference to object

Implements IOpaqueAddress.

Definition at line 86 of file GenericAddress.h.

86  {
87  int cnt = --m_refCount;
88  if ( 0 == cnt ) {
89  delete this;
90  }
91  return cnt;
92  }
unsigned long m_refCount
Reference count.
void GenericAddress::setClID ( const CLID clid)
inline

Access : Set class ID of the link.

Definition at line 106 of file GenericAddress.h.

106  {
107  m_clID = clid;
108  }
CLID m_clID
Class id.
virtual void GenericAddress::setRegistry ( IRegistry pRegistry)
inlinevirtual

Set pointer to directory.

Implements IOpaqueAddress.

Definition at line 98 of file GenericAddress.h.

98  {
99  m_pRegistry = pRegistry;
100  }
IRegistry * m_pRegistry
Pointer to corresponding directory.
void GenericAddress::setSvcType ( long  typ)
inline

Access : set the storage type of the class id.

Definition at line 114 of file GenericAddress.h.

114  {
115  m_svcType = typ;
116  }
long m_svcType
Storage type.
long GenericAddress::svcType ( ) const
inlinevirtual

Access : retrieve the storage type of the class id.

Implements IOpaqueAddress.

Definition at line 110 of file GenericAddress.h.

110  {
111  return m_svcType;
112  }
long m_svcType
Storage type.

Member Data Documentation

CLID GenericAddress::m_clID
protected

Class id.

Definition at line 28 of file GenericAddress.h.

unsigned long GenericAddress::m_ipar[2]
protected

Integer parameters to be accessed.

Definition at line 32 of file GenericAddress.h.

std::string GenericAddress::m_par[3]
protected

String parameters to be accessed.

Definition at line 30 of file GenericAddress.h.

IRegistry* GenericAddress::m_pRegistry
protected

Pointer to corresponding directory.

Definition at line 34 of file GenericAddress.h.

unsigned long GenericAddress::m_refCount
protected

Reference count.

Definition at line 24 of file GenericAddress.h.

long GenericAddress::m_svcType
protected

Storage type.

Definition at line 26 of file GenericAddress.h.


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