GenericAddress Class Reference

Generic Transient Address. More...

#include <GaudiKernel/GenericAddress.h>

Inheritance diagram for GenericAddress:
Collaboration diagram for GenericAddress:

Public Member Functions

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

Protected Attributes

unsigned long m_refCount = 0
 Reference count. More...
 
long m_svcType = 0
 Storage type. More...
 
CLID m_clID = 0
 Class id. More...
 
std::string m_par [3]
 String parameters to be accessed. More...
 
unsigned long m_ipar [2] = {0xFFFFFFFF,0xFFFFFFFF}
 Integer parameters to be accessed. More...
 
IRegistry * m_pRegistry = nullptr
 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 20 of file GenericAddress.h.

Constructor & Destructor Documentation

GenericAddress::GenericAddress ( )
default

Dummy constructor.

GenericAddress::GenericAddress ( const GenericAddress &  copy)
inline

Standard Copy Constructor (note: m_refCount is NOT copied)

Definition at line 39 of file GenericAddress.h.

40  : IOpaqueAddress(copy),
41  m_svcType(copy.m_svcType),
42  m_clID(copy.m_clID),
44  {
45  m_par[0] = copy.m_par[0];
46  m_par[1] = copy.m_par[1];
47  m_ipar[0] = copy.m_ipar[0];
48  m_ipar[1] = copy.m_ipar[1];
49  }
long m_svcType
Storage type.
CLID m_clID
Class id.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[3]
String parameters to be accessed.
Opaque address interface definition.
IRegistry * m_pRegistry
Pointer to corresponding directory.
GenericAddress::GenericAddress ( long  svc,
const CLID &  clid,
std::string  p1 = "",
std::string  p2 = "",
unsigned long  ip1 = 0,
unsigned long  ip2 = 0 
)
inline

Standard Constructor.

Definition at line 51 of file GenericAddress.h.

57  : m_svcType(svc),
58  m_clID(clid)
59  {
60  m_par[0] = std::move(p1);
61  m_par[1] = std::move(p2);
62  m_ipar[0] = ip1;
63  m_ipar[1] = ip2;
64  }
long m_svcType
Storage type.
CLID m_clID
Class id.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[3]
String parameters to be accessed.
GenericAddress::~GenericAddress ( )
overridedefault

Standard Destructor.

GenericAddress::GenericAddress ( )
default

Dummy constructor.

GenericAddress::GenericAddress ( const GenericAddress &  copy)
inline

Standard Copy Constructor (note: m_refCount is NOT copied)

Definition at line 39 of file GenericAddress.h.

40  : IOpaqueAddress(copy),
41  m_svcType(copy.m_svcType),
42  m_clID(copy.m_clID),
44  {
45  m_par[0] = copy.m_par[0];
46  m_par[1] = copy.m_par[1];
47  m_ipar[0] = copy.m_ipar[0];
48  m_ipar[1] = copy.m_ipar[1];
49  }
long m_svcType
Storage type.
CLID m_clID
Class id.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[3]
String parameters to be accessed.
Opaque address interface definition.
IRegistry * m_pRegistry
Pointer to corresponding directory.
GenericAddress::GenericAddress ( long  svc,
const CLID &  clid,
std::string  p1 = "",
std::string  p2 = "",
unsigned long  ip1 = 0,
unsigned long  ip2 = 0 
)
inline

Standard Constructor.

Definition at line 51 of file GenericAddress.h.

57  : m_svcType(svc),
58  m_clID(clid)
59  {
60  m_par[0] = std::move(p1);
61  m_par[1] = std::move(p2);
62  m_ipar[0] = ip1;
63  m_ipar[1] = ip2;
64  }
long m_svcType
Storage type.
CLID m_clID
Class id.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[3]
String parameters to be accessed.
GenericAddress::~GenericAddress ( )
overridedefault

Standard Destructor.

Member Function Documentation

unsigned long GenericAddress::addRef ( )
inlineoverridevirtual

Add reference to object.

Implements IOpaqueAddress.

Definition at line 70 of file GenericAddress.h.

70  {
71  return ++m_refCount;
72  }
unsigned long m_refCount
Reference count.
unsigned long GenericAddress::addRef ( )
inlineoverridevirtual

Add reference to object.

Implements IOpaqueAddress.

Definition at line 70 of file GenericAddress.h.

70  {
71  return ++m_refCount;
72  }
unsigned long m_refCount
Reference count.
const CLID& GenericAddress::clID ( ) const
inlineoverridevirtual

Access : Retrieve class ID of the link.

Implements IOpaqueAddress.

Definition at line 88 of file GenericAddress.h.

88  {
89  return m_clID;
90  }
CLID m_clID
Class id.
const CLID& GenericAddress::clID ( ) const
inlineoverridevirtual

Access : Retrieve class ID of the link.

Implements IOpaqueAddress.

Definition at line 88 of file GenericAddress.h.

88  {
89  return m_clID;
90  }
CLID m_clID
Class id.
const unsigned long* GenericAddress::ipar ( ) const
inlineoverridevirtual

Retrieve integer parameters.

Implements IOpaqueAddress.

Definition at line 108 of file GenericAddress.h.

108  {
109  return m_ipar;
110  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
const unsigned long* GenericAddress::ipar ( ) const
inlineoverridevirtual

Retrieve integer parameters.

Implements IOpaqueAddress.

Definition at line 108 of file GenericAddress.h.

108  {
109  return m_ipar;
110  }
unsigned long m_ipar[2]
Integer parameters to be accessed.
const std::string* GenericAddress::par ( ) const
inlineoverridevirtual

Retrieve string parameters.

Implements IOpaqueAddress.

Definition at line 104 of file GenericAddress.h.

104  {
105  return m_par;
106  }
std::string m_par[3]
String parameters to be accessed.
const std::string* GenericAddress::par ( ) const
inlineoverridevirtual

Retrieve string parameters.

Implements IOpaqueAddress.

Definition at line 104 of file GenericAddress.h.

104  {
105  return m_par;
106  }
std::string m_par[3]
String parameters to be accessed.
IRegistry* GenericAddress::registry ( ) const
inlineoverridevirtual

Pointer to directory.

Implements IOpaqueAddress.

Definition at line 80 of file GenericAddress.h.

80  {
81  return m_pRegistry;
82  }
IRegistry * m_pRegistry
Pointer to corresponding directory.
IRegistry* GenericAddress::registry ( ) const
inlineoverridevirtual

Pointer to directory.

Implements IOpaqueAddress.

Definition at line 80 of file GenericAddress.h.

80  {
81  return m_pRegistry;
82  }
IRegistry * m_pRegistry
Pointer to corresponding directory.
unsigned long GenericAddress::release ( )
inlineoverridevirtual

release reference to object

Implements IOpaqueAddress.

Definition at line 74 of file GenericAddress.h.

74  {
75  int cnt = --m_refCount;
76  if ( 0 == cnt ) delete this;
77  return cnt;
78  }
unsigned long m_refCount
Reference count.
unsigned long GenericAddress::release ( )
inlineoverridevirtual

release reference to object

Implements IOpaqueAddress.

Definition at line 74 of file GenericAddress.h.

74  {
75  int cnt = --m_refCount;
76  if ( 0 == cnt ) delete this;
77  return cnt;
78  }
unsigned long m_refCount
Reference count.
void GenericAddress::setClID ( const CLID &  clid)
inline

Access : Set class ID of the link.

Definition at line 92 of file GenericAddress.h.

92  {
93  m_clID = clid;
94  }
CLID m_clID
Class id.
void GenericAddress::setClID ( const CLID &  clid)
inline

Access : Set class ID of the link.

Definition at line 92 of file GenericAddress.h.

92  {
93  m_clID = clid;
94  }
CLID m_clID
Class id.
void GenericAddress::setRegistry ( IRegistry *  pRegistry)
inlineoverridevirtual

Set pointer to directory.

Implements IOpaqueAddress.

Definition at line 84 of file GenericAddress.h.

84  {
85  m_pRegistry = pRegistry;
86  }
IRegistry * m_pRegistry
Pointer to corresponding directory.
void GenericAddress::setRegistry ( IRegistry *  pRegistry)
inlineoverridevirtual

Set pointer to directory.

Implements IOpaqueAddress.

Definition at line 84 of file GenericAddress.h.

84  {
85  m_pRegistry = pRegistry;
86  }
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 100 of file GenericAddress.h.

100  {
101  m_svcType = typ;
102  }
long m_svcType
Storage type.
void GenericAddress::setSvcType ( long  typ)
inline

Access : set the storage type of the class id.

Definition at line 100 of file GenericAddress.h.

100  {
101  m_svcType = typ;
102  }
long m_svcType
Storage type.
long GenericAddress::svcType ( ) const
inlineoverridevirtual

Access : retrieve the storage type of the class id.

Implements IOpaqueAddress.

Definition at line 96 of file GenericAddress.h.

96  {
97  return m_svcType;
98  }
long m_svcType
Storage type.
long GenericAddress::svcType ( ) const
inlineoverridevirtual

Access : retrieve the storage type of the class id.

Implements IOpaqueAddress.

Definition at line 96 of file GenericAddress.h.

96  {
97  return m_svcType;
98  }
long m_svcType
Storage type.

Member Data Documentation

CLID GenericAddress::m_clID = 0
protected

Class id.

Definition at line 27 of file GenericAddress.h.

unsigned long GenericAddress::m_ipar = {0xFFFFFFFF,0xFFFFFFFF}
protected

Integer parameters to be accessed.

Definition at line 31 of file GenericAddress.h.

std::string GenericAddress::m_par
protected

String parameters to be accessed.

Definition at line 29 of file GenericAddress.h.

IRegistry * GenericAddress::m_pRegistry = nullptr
protected

Pointer to corresponding directory.

Definition at line 33 of file GenericAddress.h.

unsigned long GenericAddress::m_refCount = 0
protected

Reference count.

Definition at line 23 of file GenericAddress.h.

long GenericAddress::m_svcType = 0
protected

Storage type.

Definition at line 25 of file GenericAddress.h.


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