| The Gaudi Framework v27r1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
RefTable1to1< FROM, TO > Class Template Reference

`#include <GaudiKernel/RefTable.h>`

Inheritance diagram for RefTable1to1< FROM, TO >:
[legend]
Collaboration diagram for RefTable1to1< FROM, TO >:
[legend]

## Public Member Functions
| RefTable1to1 (const CLID &clid, int len=16)
| Standard Constructor. More...
| ~RefTable1to1 () override=default
| Standard Destructor. More...
virtual const CLID & | clID () const
| Retrieve reference to class definition structure. More...
bool | insert (const FROM *from, TO *to)
| Insert new Entry into Reference container. More...
bool | insert (const FROM *from, const EntryType &to)
| Insert new Entry into Reference container. More...
TO * | reference (const FROM *from)
| Find Reference from it's source entry. More...
const TO * | reference (const FROM *from) const
| Find Reference from it's source entry (CONST) More...
bool | isReferenced (const FROM *from, const TO *to) const
| Check if two entries are associated to each other. More...
bool | isReferenced (const FROM *from, const EntryType &to)
| Check if two entries are Referenced to each other. More...
Public Member Functions inherited from RefTableBase< FROM, SmartRef< TO > >
| RefTableBase (const CLID &clid, int len)
| Constructors. More...
virtual | ~RefTableBase ()=default
| Destructor. More...
virtual void | clear ()
| Clear Reference map. More...
iterator | begin ()
| Start of direct access iterator. More...
const_iterator | begin () const
| Start of direct access iterator (CONST) More...
iterator | end ()
| End of direct access iterator. More...
const_iterator | end () const
| End of direct access iterator (CONST) More...
long | size () const
| Size of References. More...
void | reserve (int len)
| Size of References. More...
virtual StreamBuffer & | serialize (StreamBuffer &s) const
| Serialize the object for writing. More...
virtual StreamBuffer & | serialize (StreamBuffer &s)
| Serialize the object for reading. More...
Public Member Functions inherited from DataObject
| DataObject ()
| Standard Constructor. More...
| DataObject (const DataObject &rhs)
| Copy Constructor. More...
DataObject & | operator= (const DataObject &rhs)
| Assignment Operator. More...
| DataObject (DataObject &&rhs)
| Move Constructor. More...
DataObject & | operator= (DataObject &&rhs)
| Move Assignment Operator. More...
virtual | ~DataObject ()
| Standard Destructor. More...
virtual unsigned long | addRef ()
| Add reference to object. More...
virtual unsigned long | release ()
| release reference to object More...
const std::string & | name () const
| Retreive DataObject name. It is the name when registered in the store. More...
virtual StatusCode | update ()
| Provide empty placeholder for internal object reconfiguration callback. More...
void | setRegistry (IRegistry *pRegistry)
| Set pointer to Registry. More...
IRegistry * | registry () const
| Get pointer to Registry. More...
LinkManager * | linkMgr () const
| Retrieve Link manager. More...
unsigned char | version () const
| Retrieve version number of this object representation. More...
void | setVersion (unsigned char vsn)
| Set version number of this object representation. More...
unsigned long | refCount () const
| Return the refcount. More...
virtual std::ostream & | fillStream (std::ostream &s) const
| Fill the output stream (ASCII) More...

## Additional Inherited Members
Public Types inherited from RefTableBase< FROM, SmartRef< TO > >
typedef FROM | KeyType
typedef SmartRef< TO > | EntryType
typedef RefTableBase< FROM, EntryType > | BaseType
typedef GaudiUtils::HashMap< const void *, EntryType > | TableType
| Define Reference map. More...
typedef TableType::iterator | iterator
| Definition of map iterator. More...
typedef TableType::const_iterator | const_iterator
| Definition of map iterator (CONST) More...
Static Public Member Functions inherited from DataObject
static const CLID & | classID ()
| Retrieve reference to class definition structure (static access) More...
Public Attributes inherited from RefTableBase< FROM, SmartRef< TO > >
CLID | m_clid
| Class id of the reference table. More...
Protected Member Functions inherited from RefTableBase< FROM, SmartRef< TO > >
bool | insertMapElement (const KeyType *from, EntryType &to)
| Insert new Entry into Reference container. More...
EntryType * | i_reference (const KeyType *from)
| Find Reference from it's source entry. More...
const EntryType * | i_reference (const KeyType *from) const
| Find Reference from it's source entry (CONST) More...

## Detailed Description

### template<class FROM, class TO>
class RefTable1to1< FROM, TO >

Definition at line 149 of file RefTable.h.

## Constructor & Destructor Documentation

template<class FROM , class TO >

RefTable1to1< FROM, TO >::RefTable1to1 | ( | const CLID & | clid,
|  | int | len = `16`
| ) |  |
| inline

Standard Constructor.

Definition at line 153 of file RefTable.h.

154 : RefTableBase< FROM , SmartRef<TO> >(clid, len)
155 {
156 }
RefTableBase
template class RefTable
Definition: RefTable.h:45
template<class FROM , class TO >

RefTable1to1< FROM, TO >::~RefTable1to1 | ( |  | ) |
| override default

Standard Destructor.

## Member Function Documentation

template<class FROM , class TO >

virtual const CLID& RefTable1to1< FROM, TO >::clID | ( |  | ) | const
| inline virtual

Retrieve reference to class definition structure.

Reimplemented from DataObject.

Definition at line 161 of file RefTable.h.

161 {
162 return m_clid;
163 }
RefTableBase< FROM, SmartRef< TO > >::m_clid
CLID m_clid
Class id of the reference table.
Definition: RefTable.h:62
template<class FROM , class TO >

bool RefTable1to1< FROM, TO >::insert | ( | const FROM * | from,
|  | TO * | to
| ) |  |
| inline

Insert new Entry into Reference container.

Definition at line 165 of file RefTable.h.

165 {
166 return insertMapElement(from, EntryType(to));
167 }
RefTableBase< FROM, SmartRef< TO > >::EntryType
SmartRef< TO > EntryType
Definition: RefTable.h:50
RefTableBase< FROM, SmartRef< TO > >::insertMapElement
bool insertMapElement(const KeyType *from, EntryType &to)
Insert new Entry into Reference container.
Definition: RefTable.h:74
template<class FROM , class TO >

bool RefTable1to1< FROM, TO >::insert | ( | const FROM * | from,
|  | const EntryType & | to
| ) |  |
| inline

Insert new Entry into Reference container.

Definition at line 169 of file RefTable.h.

169 {
170 // We MUST check the environment of the smart pointer!
171 if ( 0 != to.data() || StreamBuffer::INVALID != to.hintID() ) {
172 return insertMapElement(from, EntryType(to));
173 }
174 return false;
175 }
RefTableBase< FROM, SmartRef< TO > >::EntryType
SmartRef< TO > EntryType
Definition: RefTable.h:50
StreamBuffer::INVALID
Definition: StreamBuffer.h:117
RefTableBase< FROM, SmartRef< TO > >::insertMapElement
bool insertMapElement(const KeyType *from, EntryType &to)
Insert new Entry into Reference container.
Definition: RefTable.h:74
template<class FROM , class TO >

bool RefTable1to1< FROM, TO >::isReferenced | ( | const FROM * | from,
|  | const TO * | to
| ) |  | const
| inline

Check if two entries are associated to each other.

Definition at line 189 of file RefTable.h.

189 {
190 auto e = i_reference(from);
191 return e && ( *e == to );
192 }
RefTableBase< FROM, SmartRef< TO > >::i_reference
EntryType * i_reference(const KeyType *from)
Find Reference from it's source entry.
Definition: RefTable.h:78
template<class FROM , class TO >

bool RefTable1to1< FROM, TO >::isReferenced | ( | const FROM * | from,
|  | const EntryType & | to
| ) |  |
| inline

Check if two entries are Referenced to each other.

Definition at line 194 of file RefTable.h.

194 {
195 const EntryType* e = i_reference(from);
196 return assoc && (*e!=to) && (e->target()==to.target());
197 }
RefTableBase< FROM, SmartRef< TO > >::i_reference
EntryType * i_reference(const KeyType *from)
Find Reference from it's source entry.
Definition: RefTable.h:78
RefTableBase< FROM, SmartRef< TO > >::EntryType
SmartRef< TO > EntryType
Definition: RefTable.h:50
template<class FROM , class TO >

TO* RefTable1to1< FROM, TO >::reference | ( | const FROM * | from | ) |
| inline

Find Reference from it's source entry.

Definition at line 177 of file RefTable.h.

177 {
178 EntryType* e = i_reference(from);
179 return (0 == e) ? 0 : (*e);
180 }
RefTableBase< FROM, SmartRef< TO > >::i_reference
EntryType * i_reference(const KeyType *from)
Find Reference from it's source entry.
Definition: RefTable.h:78
RefTableBase< FROM, SmartRef< TO > >::EntryType
SmartRef< TO > EntryType
Definition: RefTable.h:50
template<class FROM , class TO >

const TO* RefTable1to1< FROM, TO >::reference | ( | const FROM * | from | ) | const
| inline

Find Reference from it's source entry (CONST)

Definition at line 183 of file RefTable.h.

183 {
184 auto e = i_reference(from);
185 return e ? *e : nullptr;
186 }
RefTableBase< FROM, SmartRef< TO > >::i_reference
EntryType * i_reference(const KeyType *from)
Find Reference from it's source entry.
Definition: RefTable.h:78

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

- GaudiKernel/GaudiKernel/RefTable.h