Execution

Run a compiled graph inside an execution context, supply runtime components defined in Python, and access live state from a running graph.

libtcspc.ExecutionContext

An execution context for a compiled processing graph.

libtcspc.EndOfProcessing

Exception raised when processing finished without error, but for a reason other than reaching the end of the input.

libtcspc.SourceHalted

Exception raised by BufferAccessor.pump when the buffer was halted.

Run-time Python components

User-supplied Python objects passed to ExecutionContext to handle input to and output from the graph.

libtcspc.PySink

Abstract base class for sinks (output handling processors) written in Python.

libtcspc.PyAcquisitionReader

Acquisition reader implemented in Python and supplied as an argument upon creation of the execution context.

libtcspc.PyBucketSource

Bucket source implemented in Python and supplied as an argument upon creation of the execution context.

Runtime access

Accessor objects expose live state from processors in running graphs. Use an AccessTag declared at graph-definition time to look up the corresponding accessor from ExecutionContext. The accessor has a run-time-generated type but implements one of the Accessor protocols.

libtcspc.Accessor

Base protocol for run-time accessors.

libtcspc.AcquireAccessor

Run-time accessor for an Acquire processor.

libtcspc.BufferAccessor

Run-time accessor for a Buffer or RealTimeBuffer processor.

libtcspc.CountAccessor

Run-time accessor for a Count processor.

libtcspc.RecordAbstimeRangeAccessor

Run-time accessor for a RecordAbstimeRange processor.

libtcspc.RecordLastAccessor

Run-time accessor for a RecordLast processor.

libtcspc.UniqueBinMapperAccessor

Run-time accessor for a UniqueBinMapper bin mapper.