ATLAS Offline Software
Loading...
Searching...
No Matches
ElementLinkBase.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4
5// Local include(s):
6#include "AthLinks/ElementLinkBase.h"
7
9 : m_persKey( key ), m_persIndex( index ), m_isDirectIO( false ) {
10
11}
12
13uint32_t ElementLinkBase::persKey() const {
14
15 return m_persKey;
16}
17
19
20 // Check if we're actually changing anything:
21 if( m_persKey == key ) return;
22 // Store the new key:
23 m_persKey = key;
24
25 // Reset the internal cache:
27
28 return;
29}
30
32
33 return m_persIndex;
34}
35
38 // Check if we're actually changing anything:
39 if( m_persIndex == index ) return;
40 // Store the new index:
43 // Reset the internal cache:
45
46 return;
47}
48
bool isDefault() const
Test to see if this link is in the default state.
bool m_isDirectIO
A transient variable signalling when direct I/O is happening.
stored_index_type persIndex() const
Return the index of the link.
sgkey_t key() const
Return the SG key that we reference, as a hash.
stored_index_type m_persIndex
The index of the element within the container for this link.
sgkey_t persKey() const
Return the SG key that we reference, as a hash.
ElementLinkBase()
Default constructor.
static const uint32_t INVALID
Value to mark an invalid index.
void setPersIndex(uint32_t index)
Set the index of the referenced object in the container.
SG::sgkey_t m_persKey
The hashed key for this link.
virtual bool toTransient()=0
Reset the object's internal cache.
void setPersKey(uint32_t key)
Set the key/identifier of the referenced container.
Definition index.py:1