freeroast 0.1.9

A simple coffee roasting app
Documentation
//!
//! Roast structure, methods, and events
//!
mod new_roast;

use crate::Bean;
use chrono::NaiveDateTime;
pub use new_roast::time_now;

///
/// Roast data structure
///
#[derive(Debug, Clone, PartialEq, PartialOrd)]
pub struct Roast {
    pub id: String,
    pub bean: Bean,
    pub starting_weight: f32,
    pub beans_in: NaiveDateTime,
    pub first_crack_start: NaiveDateTime,
    pub first_crack_finish: NaiveDateTime,
    pub second_crack_start: Option<NaiveDateTime>,
    pub second_crack_finish: Option<NaiveDateTime>,
    pub beans_out: NaiveDateTime,
}

///
/// For handeling events durring the roast
///
pub enum RoastEvent {
    BeansIn(),
    FirstCrackStart(),
    FirstCrackEnd(),
    SecondCrackStart(),
    SecondCrackEnd(),
    EndRoast(),
}