2   Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
 
    6  * @file StoreGate/VarHandleKey.icc
 
    7  * @author scott snyder <snyder@bnl.gov>
 
    9  * @brief A property holding a SG store/key/clid from which a VarHandle is made.
 
   17  * @brief Return handle to the referenced store.
 
   20 const ServiceHandle<IProxyDict>& VarHandleKey::storeHandle() const
 
   27  * @brief Return the VarHandle that owns this key, if any.
 
   29  * This should only be non-null for keys that are created automatically
 
   30  * by a VarHandle when it is _not_ created from a VarHandleKey.
 
   31  * This should always be null for keys that are created explicitly.
 
   34 VarHandleBase* VarHandleKey::owningHandle()
 
   36   return m_owningHandle;
 
   41  * @brief Set the owning handle.  Only callable from VarHandleBase.
 
   44 void VarHandleKey::setOwningHandle (VarHandleBase* handle)
 
   46   m_owningHandle = handle;
 
   51  * @brief Does this key reference the primary event store?
 
   54 bool VarHandleKey::isEventStore() const
 
   56   return m_isEventStore;
 
   61  * @brief Called by the owning algorithm during the START transition.
 
   63  * AthAlgorithm and friends will call this during START.  This allows
 
   64  * for extra initialization that we can't do during initialize(), such
 
   65  * as retrieving a conditions container from the store.
 
   67  * The default implementation is a no-op.
 
   70 StatusCode VarHandleKey::start()
 
   72   return StatusCode::SUCCESS;
 
   76  * @brief Return the hashed StoreGate key.
 
   78  * May be 0 if not yet initialized.
 
   81 SG::sgkey_t VarHandleKey::hashedKey() const
 
   88  * @brief Return the StoreGate ID for the referenced object.
 
   90 inline const std::string& VarHandleKey::key() const
 
   97  * @brief Test if the key is blank.
 
   99 inline bool VarHandleKey::empty() const
 
  101   return m_sgKey.empty();