Trait Host

Source
pub trait Host {
    type Context: HostContext<Self>;
    type TapeAsset: LoadableAsset + SeekableAsset;
    type FrameBuffer: FrameBuffer;
    type EmulationStopwatch: Stopwatch;
    type IoExtender: IoExtender;
    type DebugInterface: DebugInterface;
}
Expand description

Represents set of required types for emulator implementation based on rustzx-core.

Required Associated Types§

Source

type Context: HostContext<Self>

Immutable Context implementation which is used to obtain host-specific context objects for host-defined emulator parts construction (e.g. FrameBuffers)

Source

type TapeAsset: LoadableAsset + SeekableAsset

File-like type implementation for tape loading

Source

type FrameBuffer: FrameBuffer

Frame buffer implementation

Source

type EmulationStopwatch: Stopwatch

Type which should provide methods to measure time intervals

Source

type IoExtender: IoExtender

RustZX debug port implementation

Source

type DebugInterface: DebugInterface

Debug interface logic (e.g. breakpoints)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§