scid::database::scidBaseT is the database session facade. An opened session binds together the active storage codec, the in-memory index, the namebase, working filters, sort caches, duplicate state, and derived statistics. Application code usually starts here rather than constructing lower-level storage objects.
The session is also the boundary between metadata-only operations and full game materialisation. Listing, sorting, filtering, flag updates, many metadata edits and search prefilters work from the index and namebase. Loading or saving a complete game crosses into Core through scid::core::Game.
This diagram expands the session view into the public types programmers meet first, plus the private codec role that explains where persistent data lives. It is intentionally loose: it shows the main navigation paths, not every operation on scidBaseT.
scidBaseT owns the open-session state. IndexEntry is the compact record used for fast database views; NameBase turns the name IDs in that record into strings. HFilter is a handle over filter storage, and sort/statistics caches are derived from the index. Codecs are implementation details: consumers see the session API and Core Game values, not codec objects.