| The Gaudi Framework v32r1 (f65d50dc)

Public Member Functions | Protected Attributes | List of all members
GenericAddress Class Reference

Generic Transient Address. More...

`#include <GaudiKernel/GenericAddress.h>`

Inheritance diagram for GenericAddress:
[legend]
Collaboration diagram for GenericAddress:
[legend]

## 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...
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...

## 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() [1/3]

GenericAddress::GenericAddress | ( |  | ) |
| default

Dummy constructor.

## ◆ GenericAddress() [2/3]

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 ), m_svcType( copy.m_svcType ), m_clID( copy.m_clID ), m_pRegistry( copy.m_pRegistry ) {
41 m_par[0] = copy.m_par[0];
42 m_par[1] = copy.m_par[1];
43 m_ipar[0] = copy.m_ipar[0];
44 m_ipar[1] = copy.m_ipar[1];
45 }
GenericAddress::m_ipar
unsigned long m_ipar[2]
Integer parameters to be accessed.
Definition: GenericAddress.h:31
GenericAddress::m_svcType
long m_svcType
Storage type.
Definition: GenericAddress.h:25
std::copy
T copy(T... args)
GenericAddress::m_pRegistry
IRegistry * m_pRegistry
Pointer to corresponding directory.
Definition: GenericAddress.h:33
GenericAddress::m_par
std::string m_par[3]
String parameters to be accessed.
Definition: GenericAddress.h:29
GenericAddress::m_clID
CLID m_clID
Class id.
Definition: GenericAddress.h:27
IOpaqueAddress
Opaque address interface definition.
Definition: IOpaqueAddress.h:23

## ◆ GenericAddress() [3/3]

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 47 of file GenericAddress.h.

49 : m_svcType( svc ), m_clID( clid ) {
50 m_par[0] = std::move( p1 );
51 m_par[1] = std::move( p2 );
52 m_ipar[0] = ip1;
53 m_ipar[1] = ip2;
54 }
GenericAddress::m_ipar
unsigned long m_ipar[2]
Integer parameters to be accessed.
Definition: GenericAddress.h:31
GenericAddress::m_svcType
long m_svcType
Storage type.
Definition: GenericAddress.h:25
GenericAddress::m_par
std::string m_par[3]
String parameters to be accessed.
Definition: GenericAddress.h:29
std::move
T move(T... args)
GenericAddress::m_clID
CLID m_clID
Class id.
Definition: GenericAddress.h:27

## Member Function Documentation

## ◆ addRef()

unsigned long GenericAddress::addRef | ( |  | ) |
| inline override virtual

Add reference to object.

Implements IOpaqueAddress.

Definition at line 57 of file GenericAddress.h.

57 { return ++m_refCount; }
GenericAddress::m_refCount
unsigned long m_refCount
Reference count.
Definition: GenericAddress.h:23

## ◆ clID()

const CLID& GenericAddress::clID | ( |  | ) | const
| inline override virtual

Access : Retrieve class ID of the link.

Implements IOpaqueAddress.

Definition at line 69 of file GenericAddress.h.

69 { return m_clID; }
GenericAddress::m_clID
CLID m_clID
Class id.
Definition: GenericAddress.h:27

## ◆ ipar()

const unsigned long* GenericAddress::ipar | ( |  | ) | const
| inline override virtual

Retrieve integer parameters.

Implements IOpaqueAddress.

Definition at line 79 of file GenericAddress.h.

79 { return m_ipar; }
GenericAddress::m_ipar
unsigned long m_ipar[2]
Integer parameters to be accessed.
Definition: GenericAddress.h:31

## ◆ par()

const std::string* GenericAddress::par | ( |  | ) | const
| inline override virtual

Retrieve string parameters.

Implements IOpaqueAddress.

Definition at line 77 of file GenericAddress.h.

77 { return m_par; }
GenericAddress::m_par
std::string m_par[3]
String parameters to be accessed.
Definition: GenericAddress.h:29

## ◆ registry()

IRegistry* GenericAddress::registry | ( |  | ) | const
| inline override virtual

Pointer to directory.

Implements IOpaqueAddress.

Definition at line 65 of file GenericAddress.h.

65 { return m_pRegistry; }
GenericAddress::m_pRegistry
IRegistry * m_pRegistry
Pointer to corresponding directory.
Definition: GenericAddress.h:33

## ◆ release()

unsigned long GenericAddress::release | ( |  | ) |
| inline override virtual

release reference to object

Implements IOpaqueAddress.

Definition at line 59 of file GenericAddress.h.

59 {
60 int cnt = --m_refCount;
61 if ( 0 == cnt ) delete this;
62 return cnt;
63 }
GenericAddress::m_refCount
unsigned long m_refCount
Reference count.
Definition: GenericAddress.h:23

## ◆ setClID()

void GenericAddress::setClID | ( | const CLID & | clid | ) |
| inline

Access : Set class ID of the link.

Definition at line 71 of file GenericAddress.h.

71 { m_clID = clid; }
GenericAddress::m_clID
CLID m_clID
Class id.
Definition: GenericAddress.h:27

## ◆ setRegistry()

void GenericAddress::setRegistry | ( | IRegistry * | pRegistry | ) |
| inline override virtual

Set pointer to directory.

Implements IOpaqueAddress.

Definition at line 67 of file GenericAddress.h.

67 { m_pRegistry = pRegistry; }
GenericAddress::m_pRegistry
IRegistry * m_pRegistry
Pointer to corresponding directory.
Definition: GenericAddress.h:33

## ◆ setSvcType()

void GenericAddress::setSvcType | ( | long | typ | ) |
| inline

Access : set the storage type of the class id.

Definition at line 75 of file GenericAddress.h.

75 { m_svcType = typ; }
GenericAddress::m_svcType
long m_svcType
Storage type.
Definition: GenericAddress.h:25

## ◆ svcType()

long GenericAddress::svcType | ( |  | ) | const
| inline override virtual

Access : retrieve the storage type of the class id.

Implements IOpaqueAddress.

Definition at line 73 of file GenericAddress.h.

73 { return m_svcType; }
GenericAddress::m_svcType
long m_svcType
Storage type.
Definition: GenericAddress.h:25

## Member Data Documentation

## ◆ m_clID

CLID GenericAddress::m_clID = 0
| protected

Class id.

Definition at line 27 of file GenericAddress.h.

## ◆ m_ipar

unsigned long GenericAddress::m_ipar[2] = {0xFFFFFFFF, 0xFFFFFFFF}
| protected

Integer parameters to be accessed.

Definition at line 31 of file GenericAddress.h.

## ◆ m_par

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

String parameters to be accessed.

Definition at line 29 of file GenericAddress.h.

## ◆ m_pRegistry

IRegistry* GenericAddress::m_pRegistry = nullptr
| protected

Pointer to corresponding directory.

Definition at line 33 of file GenericAddress.h.

## ◆ m_refCount

unsigned long GenericAddress::m_refCount = 0
| protected

Reference count.

Definition at line 23 of file GenericAddress.h.

## ◆ m_svcType

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:

- GaudiKernel/GaudiKernel/GenericAddress.h