pub struct HardwareFixed {
pub value: u32,
pub precision_bits: u8,
}Expand description
Minimal fixed-point u32 for embedded
Fields§
§value: u32Raw value
precision_bits: u8Bits after binary point (typically 8-16)
Implementations§
Source§impl HardwareFixed
impl HardwareFixed
Sourcepub const fn new(value: u32, precision_bits: u8) -> HardwareFixed
pub const fn new(value: u32, precision_bits: u8) -> HardwareFixed
Create from value and precision
Sourcepub fn multiply(&self, other: &HardwareFixed) -> HardwareFixed
pub fn multiply(&self, other: &HardwareFixed) -> HardwareFixed
Multiply (with rounding to avoid overflow)
Sourcepub fn ln_approx(&self) -> HardwareFixed
pub fn ln_approx(&self) -> HardwareFixed
Fast approximation of ln using Taylor series Assumes input normalized to [1, 2)
Trait Implementations§
Source§impl Clone for HardwareFixed
impl Clone for HardwareFixed
Source§fn clone(&self) -> HardwareFixed
fn clone(&self) -> HardwareFixed
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HardwareFixed
impl Debug for HardwareFixed
Source§impl PartialEq for HardwareFixed
impl PartialEq for HardwareFixed
impl Copy for HardwareFixed
impl Eq for HardwareFixed
impl StructuralPartialEq for HardwareFixed
Auto Trait Implementations§
impl Freeze for HardwareFixed
impl RefUnwindSafe for HardwareFixed
impl Send for HardwareFixed
impl Sync for HardwareFixed
impl Unpin for HardwareFixed
impl UnsafeUnpin for HardwareFixed
impl UnwindSafe for HardwareFixed
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
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§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> 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