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§
Sourcetype Context: HostContext<Self>
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)
Sourcetype TapeAsset: LoadableAsset + SeekableAsset
type TapeAsset: LoadableAsset + SeekableAsset
File-like type implementation for tape loading
Sourcetype FrameBuffer: FrameBuffer
type FrameBuffer: FrameBuffer
Frame buffer implementation
Sourcetype EmulationStopwatch: Stopwatch
type EmulationStopwatch: Stopwatch
Type which should provide methods to measure time intervals
Sourcetype IoExtender: IoExtender
type IoExtender: IoExtender
RustZX debug port implementation
Sourcetype DebugInterface: DebugInterface
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.