Skip to content

Commit 4edbe35

Browse files
committed
Update documentation
1 parent 5378eaa commit 4edbe35

File tree

1 file changed

+19
-13
lines changed

1 file changed

+19
-13
lines changed

doc/storage_details.md

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -62,23 +62,29 @@ there will be the following branches per supported type
6262

6363
The podio related metadata, stored in the `podio_metadata` `TTree` (or
6464
`RNTupleModel`) contains the following general information once per file
65-
6665
- The version of podio that has been used to write this file
6766
- The complete datamodel definitions for each datamodel that was encountered
6867
when writing the file
6968

70-
And the following information once per category
71-
- The mapping of collection names to collection IDs
72-
- The types of all the stored collections
73-
- The schema version of all stored collections
74-
- Which collections are stored as subset collections
75-
76-
Here the `TTree` based and `RNTuple` based backends differ slightly in the way
77-
these data are stored exactly. The `TTree` based backend stores the data in a
78-
slightly more structured way, taking advantage of ROOTs capabilities to stream
79-
out more complex object, e.g. the `podio::CollectionIDTable` is streamed as a
80-
whole. The `RNTuple` based backend on the other hand, destructures the
81-
information into separate fields that run in parallel.
69+
And the following information once per category for each collection in that category
70+
- The collection ID
71+
- The collection name
72+
- The collection type
73+
- Whether the collection is a subset collection
74+
- The collection schema version
75+
- The collection storage type (which is different from the collection type and
76+
describes the format in which the data is actually stored rather than how it
77+
can be accessed in memory)
78+
79+
From a technical point of view this information is stored as a
80+
`std::vector<podio::root_utils::CollectionWriteInfo>`.
81+
82+
```{note}
83+
The exact details of how this information is stored in podio files has changed
84+
several times. The readers provided by podio handle these changes transparently,
85+
but other readers might have to adapt for these changes. **Notable changes
86+
happened before v01-00, and v01-03.**
87+
```
8288

8389
## SIO
8490

0 commit comments

Comments
 (0)