TraceReader¶
- class osi_utilities.tracefile.readers.base.TraceReader[source]¶
Bases:
ABCAbstract base class for reading OSI trace files.
Supports context manager protocol and iteration.
Read contract:
read_message()returnsNoneon EOF.read_message()returnsReadResult(status=ReadStatus.OK, ...)for valid messages.read_message()returnsReadResult(status=ReadStatus.INCOMPATIBLE, ...)for incompatible schema/encoding/message-type cases.read_message()returnsReadResult(status=ReadStatus.ERROR, ...)for actual runtime read/decode/parse failures.
Iterator contract (
for ... in reader):raises
ValueErrorforReadStatus.INCOMPATIBLEraises
RuntimeErrorforReadStatus.ERROR
- abstractmethod read_message()[source]¶
Read the next message from the trace file.
- Returns:
A
ReadResultfor message/status outcomes, orNoneif no more messages.- Return type:
ReadResult | None
- osi_utilities.tracefile.configure.create_reader(path)[source]¶
Create a trace file reader appropriate for the given file.
- Parameters:
path (str | Path) – Path to the trace file. Extension determines the reader type.
- Returns:
An unopened TraceReader instance.
- Raises:
ValueError – If the file extension is not supported.
- Return type: