The yellowpaper (version 7e819ec - 2019-10-20) section 6.1 Substate includes a description of:
indexable ‘checkpoints’ in VM code execution that allow for
contract-calls to be easily tracked byonlookers external to the
Ethereum world (such as decentralised application front-ends).
The yellowpaper preceded the event terminology, but an event is a way ...
You can find the go implementation of the header struct here. It could be implemented in different languages differently depending on the corresponding programming patterns. However it should match the specs in the Ethereum yellow paper.