#[repr(C)]pub struct PluginPaintCmd {
pub cmd_type: u16,
pub flags: u16,
pub data_len: u32,
pub payload_offset: u32,
}Expand description
A raw paint command produced by a WebAssembly plugin.
The record is laid out exactly as the guest writes it into shared memory so that the host can read it directly from the ring buffer without copying.
§Examples
use martensite_plugin::PluginPaintCmd;
let cmd = PluginPaintCmd {
cmd_type: 1,
flags: 0,
data_len: 12,
payload_offset: 100,
};
assert_eq!(cmd.data_len, 12);Fields§
§cmd_type: u16Discriminant of the paint operation (e.g. 0=DrawLine, 1=FillRect).
flags: u16Command flags for future extensions.
data_len: u32Length of the variable-length payload in bytes.
payload_offset: u32Byte offset of the payload relative to the start of the ring buffer.
Implementations§
Source§impl PluginPaintCmd
impl PluginPaintCmd
Sourcepub const fn header_size() -> usize
pub const fn header_size() -> usize
Returns the number of bytes occupied by the command header.
§Examples
use martensite_plugin::PluginPaintCmd;
assert_eq!(PluginPaintCmd::header_size(), 12);Trait Implementations§
Source§impl Clone for PluginPaintCmd
impl Clone for PluginPaintCmd
Source§fn clone(&self) -> PluginPaintCmd
fn clone(&self) -> PluginPaintCmd
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for PluginPaintCmd
Source§impl Debug for PluginPaintCmd
impl Debug for PluginPaintCmd
Source§impl Default for PluginPaintCmd
impl Default for PluginPaintCmd
Source§fn default() -> PluginPaintCmd
fn default() -> PluginPaintCmd
Returns the “default value” for a type. Read more
impl Eq for PluginPaintCmd
Source§impl PartialEq for PluginPaintCmd
impl PartialEq for PluginPaintCmd
impl StructuralPartialEq for PluginPaintCmd
Auto Trait Implementations§
impl Freeze for PluginPaintCmd
impl RefUnwindSafe for PluginPaintCmd
impl Send for PluginPaintCmd
impl Sync for PluginPaintCmd
impl Unpin for PluginPaintCmd
impl UnsafeUnpin for PluginPaintCmd
impl UnwindSafe for PluginPaintCmd
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: Sized + AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more