Athena EDM
StoreGate in ROOT I/O  
ATLAS database page
     The current implementation of StoreGate uses Gaudi Data Store. Since this Root I/O service maps Gaudi TDS structure onto TDataSet structure, the data objects stored in StoreGate are readily written into the root file.

In particular, concrete objects of DataObject type are converted to concrete objects of TDataSet type. In general the path of the DataObject in TDS is stored TDataSet as its name, and the hierachical structure of the DataObjects are preserved in that of TDataSet.

One special treatment is the soft link in the Data Store. This soft link is used in StoreGate as symlink for objects. One object can therefore have multiple entries in the Store as different types (base classes). The current Gaudi persistency does not treat the links properly, it simply writes the DataObject it is pointing to. Therefore real object may be written more than once, and the information about the soft link is lost. In this ROOT I/O, the soft links in TDS are stored as part of the parent object, and therefore preserved. The user should make sure that the objects it is pointing to gets persistified, and not the link itself. See the jobOptions file for LAr as an example .