Trait dive_deco::DecoModel

source ·
pub trait DecoModel {
    type ConfigType: DecoModelConfig;

    // Required methods
    fn new(config: Self::ConfigType) -> Self;
    fn step(&mut self, depth: &Depth, time: &Seconds, gas: &Gas);
    fn ndl(&self) -> Minutes;
    fn ceiling(&self) -> Depth;
    fn config(&self) -> Self::ConfigType;
    fn dive_state(&self) -> DiveState;
}

Required Associated Types§

source

type ConfigType: DecoModelConfig

Required Methods§

source

fn new(config: Self::ConfigType) -> Self

model init

source

fn step(&mut self, depth: &Depth, time: &Seconds, gas: &Gas)

add register step (depth: meters, time: seconds)

source

fn ndl(&self) -> Minutes

current non decompression limit (NDL)

source

fn ceiling(&self) -> Depth

current decompression ceiling in meters

source

fn config(&self) -> Self::ConfigType

get model config

source

fn dive_state(&self) -> DiveState

get model dive state

Object Safety§

This trait is not object safe.

Implementors§