The Gaudi Framework  v32r1 (f65d50dc)
RootHistCnv::RootObjAddress Class Reference

#include <src/RootObjAddress.h>

Inheritance diagram for RootHistCnv::RootObjAddress:
Collaboration diagram for RootHistCnv::RootObjAddress:

Public Member Functions

 RootObjAddress ()=default
 Dummy constructor. More...
 
 RootObjAddress (const RootObjAddress &copy)
 
 RootObjAddress (long svc, const CLID &clid, std::string_view p1={}, std::string_view p2={}, unsigned long ip1=0, unsigned long ip2=0, TObject *tObj=nullptr)
 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...
 
virtual 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...
 
virtual 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...
 
virtual TObject * tObj () const
 Retrieve TObject* ptr. More...
 
- Public Member Functions inherited from IOpaqueAddress
virtual ~IOpaqueAddress ()=default
 destructor More...
 

Protected Attributes

unsigned long m_refCount = 0
 
long m_svcType = 0
 Storage type. More...
 
CLID m_clID = 0
 Class id. More...
 
std::string m_par [2]
 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...
 
TObject * m_tObj = nullptr
 Pointer to TObject. More...
 

Detailed Description

Definition at line 11 of file RootObjAddress.h.

Constructor & Destructor Documentation

◆ RootObjAddress() [1/3]

RootHistCnv::RootObjAddress::RootObjAddress ( )
default

Dummy constructor.

◆ RootObjAddress() [2/3]

RootHistCnv::RootObjAddress::RootObjAddress ( const RootObjAddress &  copy)
inline

Definition at line 32 of file RootObjAddress.h.

33  : IOpaqueAddress( copy )
34  , m_refCount( 0 )
35  , m_svcType( copy.m_svcType )
36  , m_clID( copy.m_clID )
37  , m_pRegistry( copy.m_pRegistry )
38  , m_tObj( copy.m_tObj ) {
39  m_par[0] = copy.m_par[0];
40  m_par[1] = copy.m_par[1];
41  m_ipar[0] = copy.m_ipar[0];
42  m_ipar[1] = copy.m_ipar[1];
43  }
T copy(T... args)
IRegistry * m_pRegistry
Pointer to corresponding directory.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[2]
String parameters to be accessed.
TObject * m_tObj
Pointer to TObject.
long m_svcType
Storage type.
Opaque address interface definition.

◆ RootObjAddress() [3/3]

RootHistCnv::RootObjAddress::RootObjAddress ( long  svc,
const CLID &  clid,
std::string_view  p1 = {},
std::string_view  p2 = {},
unsigned long  ip1 = 0,
unsigned long  ip2 = 0,
TObject *  tObj = nullptr 
)
inline

Standard Constructor.

Definition at line 46 of file RootObjAddress.h.

46  {}, std::string_view p2 = {},
47  unsigned long ip1 = 0, unsigned long ip2 = 0, TObject* tObj = nullptr )
48  : m_svcType( svc ), m_clID( clid ), m_tObj( tObj ) {
49  m_par[0] = std::string{p1};
50  m_par[1] = std::string{p2};
51  m_ipar[0] = ip1;
52  m_ipar[1] = ip2;
53  }
virtual TObject * tObj() const
Retrieve TObject* ptr.
unsigned long m_ipar[2]
Integer parameters to be accessed.
std::string m_par[2]
String parameters to be accessed.
STL class.
TObject * m_tObj
Pointer to TObject.
long m_svcType
Storage type.

Member Function Documentation

◆ addRef()

unsigned long RootHistCnv::RootObjAddress::addRef ( )
inlineoverridevirtual

Add reference to object.

Implements IOpaqueAddress.

Definition at line 56 of file RootObjAddress.h.

56 { return ++m_refCount; }

◆ clID()

const CLID& RootHistCnv::RootObjAddress::clID ( ) const
inlineoverridevirtual

Access : Retrieve class ID of the link.

Implements IOpaqueAddress.

Definition at line 68 of file RootObjAddress.h.

68 { return m_clID; }

◆ ipar()

const unsigned long* RootHistCnv::RootObjAddress::ipar ( ) const
inlineoverridevirtual

Retrieve integer parameters.

Implements IOpaqueAddress.

Definition at line 78 of file RootObjAddress.h.

78 { return m_ipar; }
unsigned long m_ipar[2]
Integer parameters to be accessed.

◆ par()

const std::string* RootHistCnv::RootObjAddress::par ( ) const
inlineoverridevirtual

Retrieve string parameters.

Implements IOpaqueAddress.

Definition at line 76 of file RootObjAddress.h.

76 { return m_par; }
std::string m_par[2]
String parameters to be accessed.

◆ registry()

IRegistry* RootHistCnv::RootObjAddress::registry ( ) const
inlineoverridevirtual

Pointer to directory.

Implements IOpaqueAddress.

Definition at line 64 of file RootObjAddress.h.

64 { return m_pRegistry; }
IRegistry * m_pRegistry
Pointer to corresponding directory.

◆ release()

unsigned long RootHistCnv::RootObjAddress::release ( )
inlineoverridevirtual

release reference to object

Implements IOpaqueAddress.

Definition at line 58 of file RootObjAddress.h.

58  {
59  int cnt = --m_refCount;
60  if ( 0 == cnt ) delete this;
61  return cnt;
62  }

◆ setClID()

virtual void RootHistCnv::RootObjAddress::setClID ( const CLID &  clid)
inlinevirtual

Access : Set class ID of the link.

Definition at line 70 of file RootObjAddress.h.

70 { m_clID = clid; }

◆ setRegistry()

void RootHistCnv::RootObjAddress::setRegistry ( IRegistry *  pRegistry)
inlineoverridevirtual

Set pointer to directory.

Implements IOpaqueAddress.

Definition at line 66 of file RootObjAddress.h.

66 { m_pRegistry = pRegistry; }
IRegistry * m_pRegistry
Pointer to corresponding directory.

◆ setSvcType()

virtual void RootHistCnv::RootObjAddress::setSvcType ( long  typ)
inlinevirtual

Access : set the storage type of the class id.

Definition at line 74 of file RootObjAddress.h.

74 { m_svcType = typ; }
long m_svcType
Storage type.

◆ svcType()

long RootHistCnv::RootObjAddress::svcType ( ) const
inlineoverridevirtual

Access : retrieve the storage type of the class id.

Implements IOpaqueAddress.

Definition at line 72 of file RootObjAddress.h.

72 { return m_svcType; }
long m_svcType
Storage type.

◆ tObj()

virtual TObject* RootHistCnv::RootObjAddress::tObj ( ) const
inlinevirtual

Retrieve TObject* ptr.

Definition at line 81 of file RootObjAddress.h.

81 { return m_tObj; }
TObject * m_tObj
Pointer to TObject.

Member Data Documentation

◆ m_clID

CLID RootHistCnv::RootObjAddress::m_clID = 0
protected

Class id.

Definition at line 18 of file RootObjAddress.h.

◆ m_ipar

unsigned long RootHistCnv::RootObjAddress::m_ipar[2] = {0xFFFFFFFF, 0xFFFFFFFF}
protected

Integer parameters to be accessed.

Definition at line 22 of file RootObjAddress.h.

◆ m_par

std::string RootHistCnv::RootObjAddress::m_par[2]
protected

String parameters to be accessed.

Definition at line 20 of file RootObjAddress.h.

◆ m_pRegistry

IRegistry* RootHistCnv::RootObjAddress::m_pRegistry = nullptr
protected

Pointer to corresponding directory.

Definition at line 24 of file RootObjAddress.h.

◆ m_refCount

unsigned long RootHistCnv::RootObjAddress::m_refCount = 0
protected

Definition at line 14 of file RootObjAddress.h.

◆ m_svcType

long RootHistCnv::RootObjAddress::m_svcType = 0
protected

Storage type.

Definition at line 16 of file RootObjAddress.h.

◆ m_tObj

TObject* RootHistCnv::RootObjAddress::m_tObj = nullptr
protected

Pointer to TObject.

Definition at line 26 of file RootObjAddress.h.


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