2 #ifndef GAUDIKERNEL_REFTABLE_H
3 #define GAUDIKERNEL_REFTABLE_H 1
15 static const CLID CLID_RefTable1to1 = 300;
16 static const CLID CLID_RefTable1toN = 301;
82 return &((*i).second);
90 return &((*i).second);
145 DataObject::serialize(s) >> siz;
174 bool insert (
const FROM* from, TO* to ) {
188 return (0 == e) ? 0 : (*e);
194 return (0 == e) ? 0 : (*e);
200 return (e == 0) ?
false : ((*e) == to);
205 return (assoc!=0) ? ((*e)!=to) ? (e->
target()==to.
target()) :
false :
false;
224 bool insert (
const FROM* from, TO* to) {
229 if ( !( 0 == newEntry) ) {
244 if ( !(0 == newEntry) ) {
245 newEntry->push_back( to );
250 entry->push_back( to );
261 return (0 == e) ? empty : *e;
267 return (0 == e) ? empty : (*e);
272 return (0 == e) ?
false : (*e == to);
283 return (i == e->end()) ?
false :
true;
290 #endif // GAUDIKERNEL_REFTABLE_H
CLID m_clid
Class id of the reference table.
RefTableBase< FROM, EntryType > BaseType
virtual ~RefTableBase()
Destructor.
iterator begin()
Start of direct access iterator.
bool isReferenced(const FROM *from, const TO *to)
Check if two entries are Referenced to each other.
The stream buffer is a small object collecting object data.
virtual StreamBuffer & serialize(StreamBuffer &s)
Serialize the object for reading.
const TYPE * target() const
Access to the object.
const EntryType * i_reference(const KeyType *from) const
Find Reference from it's source entry (CONST)
GaudiUtils::HashMap< const void *, EntryType > TableType
Define Reference map.
TableType::const_iterator const_iterator
Definition of map iterator (CONST)
const_iterator begin() const
Start of direct access iterator (CONST)
TO * reference(const FROM *from)
Find Reference from it's source entry.
bool isReferenced(const FROM *from, const EntryType &to)
Check if two entries are Referenced to each other.
virtual const CLID & clID() const
Retrieve reference to class definition structure.
const EntryType & reference(const FROM *from) const
Find Reference from it's source entry (CONST)
Kernel objects: SmartRefVector.
EntryType * i_reference(const KeyType *from)
Find Reference from it's source entry.
std::pair< iterator, bool > insert(const value_type &val)
bool insert(const FROM *from, const EntryType &to)
Insert new Entry into Reference container.
const TO * reference(const FROM *from) const
Find Reference from it's source entry (CONST)
void reserve(int len)
Size of References.
long size() const
Size of References.
TableType::iterator iterator
Definition of map iterator.
TYPE * data()
Access to raw data pointer.
iterator end()
End of direct access iterator.
RefTableBase(const CLID &clid, int len)
Constructors.
virtual ~RefTable1to1()
Standard Destructor.
iterator find(const key_type &key)
RefTable1toN(const CLID &clid, int len=16)
Standard Constructor.
const_iterator end() const
End of direct access iterator (CONST)
unsigned int CLID
Class ID definition.
map_type::const_iterator const_iterator
virtual void clear()
Clear Reference map.
virtual StreamBuffer & serialize(StreamBuffer &s) const
Serialize the object for writing.
TableType m_table
Reference map.
map_type::iterator iterator
virtual ~RefTable1toN()
Standard Destructor.
long hintID() const
Access hint id:
bool isReferenced(const FROM *from, const SmartRef< TO > &to)
Check if two entries are Referenced to each other.
bool insert(const FROM *from, const SmartRef< TO > &to)
Insert new Entry into Reference container.
RefTable1to1(const CLID &clid, int len=16)
Standard Constructor.
bool insert(const FROM *from, const EntryType &to)
Insert new Entry into Reference container.
bool insert(const FROM *from, TO *to)
Insert new Entry into Reference container.
virtual const CLID & clID() const
Retrieve reference to class definition structure.
bool insertMapElement(const KeyType *from, EntryType &to)
Insert new Entry into Reference container.
bool isReferenced(const FROM *from, const TO *to)
Check if two entries are associated to each other.
SmartRef< KeyType > m_fromRef
This is a completely useless entry, but the compiler wants it to be instantiated before the serialize...
EntryType & reference(const FROM *from)
Find Reference from it's source entry.
A DataObject is the base class of any identifiable object on any data store.
bool isReferenced(const FROM *from, const EntryType &to)
Check if two entries are Referenced to each other.
bool insert(const FROM *from, TO *to)
Insert new Entry into Reference container.