Skip to content
  • Vakhtang Tsulaia's avatar
    First attempt to store IOVMetaDataContainer objects into MetaCont · 4daa8704
    Vakhtang Tsulaia authored
    In order to support multiple copies of metadata objects in flight in AthenaMT
    (required for running over more than one input file), such metadata objects
    need to be stored into MetaCont - a container for objects of the same time
    indexed by SID (file name).
    
    This commit introduces a mechanism inside IOVDbMetaDataTool, which gets triggered
    at BeginInputFile incident, and which stores IOVMetaDataContainer objects read
    from each input file into MetaCont<IOVMetaDataContainer>, which is accessible
    to clients in the MetaDataStore via ReadMetaHandle-s.
    
    The changes affect several files:
    
    * CondAttrListCollection.h
    
    Introduced new overloaded version of the dump() which allows printing the contents
    of CondAttrListCollection to MsgStream. This is mostly for debugging purpose.
    
    * MetaCont.h
    
    The interface was simplified by dropping several methods, that have no clients.
    These mathods can be reintroduced later, if necessary.
    
    * MetaHandleKey(.h,.icc)
    
    The code was updated by analogy with the current implementation of CondHandleKey
    
    * ReadMetaHandle.h
    
    Dropped the inheritance from VarHandleBase, and fixed the implementation of the constructor.
    
    * ReadMetaHandleKey.h
    
    Introduced new constructor.
    
    * IOVMetaDataContainer(.h,.cxx)
    
    Simplified the merge() method and introduced new dump() method
    
    * IOVPayloadContainer(.h,.cxx)
    
    Introduced copy constructor and assignment operator
    
    * IOVDbMetaDataTool(.h,.cxx)
    
    Introduced two new methods fillMetaCont(), which adds IOVMetaDataContainer to MetaCont-s,
    and dumpMetaConts()
    4daa8704