pub struct LowLevel<M: Model, I: Interface> { /* private fields */ }Expand description
LowLevel is a low-level interface to EVE controllers which matches
the primitive operations used in Programmers Guides for the various
EVE controllers.
This is slightly higher-level than the Interface trait, providing
size-specific memory accesses, but doesn’t have any special knowledge
about the memory map or command set of any particular EVE implementation.
This struct tracks a “cursor” for appending display list entries using
the dl method. Use dl_reset to reset that cursor to the beginning of
display list memory, which you’ll typically (but not necessarily) do after
writing REG_DLSWAP to swap the display list double buffer. LowLevel
doesn’t manage display list buffer swapping itself, only the cursor for
the next dl call.
Implementations§
Source§impl<M: Model, I: Interface> LowLevel<M, I>
impl<M: Model, I: Interface> LowLevel<M, I>
pub fn new(interface: I) -> Self
Sourcepub fn take_interface(self) -> I
pub fn take_interface(self) -> I
Consumes the LowLevel object and returns the interface it was
originally created with.