1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
/*
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 0.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */




#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct PrinterProfile {
    #[serde(rename = "id")]
    pub id: i32,
    #[serde(rename = "user")]
    pub user: i32,
    #[serde(rename = "octoprint_device")]
    pub octoprint_device: i32,
    #[serde(rename = "axes_e_inverted", skip_serializing_if = "Option::is_none")]
    pub axes_e_inverted: Option<bool>,
    #[serde(rename = "axes_e_speed", skip_serializing_if = "Option::is_none")]
    pub axes_e_speed: Option<i32>,
    #[serde(rename = "axes_x_speed", skip_serializing_if = "Option::is_none")]
    pub axes_x_speed: Option<i32>,
    #[serde(rename = "axes_x_inverted", skip_serializing_if = "Option::is_none")]
    pub axes_x_inverted: Option<bool>,
    #[serde(rename = "axes_y_inverted", skip_serializing_if = "Option::is_none")]
    pub axes_y_inverted: Option<bool>,
    #[serde(rename = "axes_y_speed", skip_serializing_if = "Option::is_none")]
    pub axes_y_speed: Option<i32>,
    #[serde(rename = "axes_z_inverted", skip_serializing_if = "Option::is_none")]
    pub axes_z_inverted: Option<bool>,
    #[serde(rename = "axes_z_speed", skip_serializing_if = "Option::is_none")]
    pub axes_z_speed: Option<i32>,
    #[serde(rename = "extruder_count", skip_serializing_if = "Option::is_none")]
    pub extruder_count: Option<i32>,
    #[serde(rename = "extruder_nozzle_diameter", skip_serializing_if = "Option::is_none")]
    pub extruder_nozzle_diameter: Option<f32>,
    #[serde(rename = "extruder_shared_nozzle", skip_serializing_if = "Option::is_none")]
    pub extruder_shared_nozzle: Option<bool>,
    #[serde(rename = "heated_bed", skip_serializing_if = "Option::is_none")]
    pub heated_bed: Option<bool>,
    #[serde(rename = "heated_chamber", skip_serializing_if = "Option::is_none")]
    pub heated_chamber: Option<bool>,
    #[serde(rename = "model", skip_serializing_if = "Option::is_none")]
    pub model: Option<String>,
    #[serde(rename = "name")]
    pub name: String,
    #[serde(rename = "octoprint_key")]
    pub octoprint_key: String,
    #[serde(rename = "volume_custom_box", skip_serializing_if = "Option::is_none")]
    pub volume_custom_box: Option<::std::collections::HashMap<String, serde_json::Value>>,
    #[serde(rename = "volume_depth", skip_serializing_if = "Option::is_none")]
    pub volume_depth: Option<f32>,
    #[serde(rename = "volume_formfactor", skip_serializing_if = "Option::is_none")]
    pub volume_formfactor: Option<String>,
    #[serde(rename = "volume_height", skip_serializing_if = "Option::is_none")]
    pub volume_height: Option<f32>,
    #[serde(rename = "volume_origin", skip_serializing_if = "Option::is_none")]
    pub volume_origin: Option<String>,
    #[serde(rename = "volume_width", skip_serializing_if = "Option::is_none")]
    pub volume_width: Option<f32>,
    #[serde(rename = "url")]
    pub url: String,
}

impl PrinterProfile {
    pub fn new(id: i32, user: i32, octoprint_device: i32, name: String, octoprint_key: String, url: String) -> PrinterProfile {
        PrinterProfile {
            id,
            user,
            octoprint_device,
            axes_e_inverted: None,
            axes_e_speed: None,
            axes_x_speed: None,
            axes_x_inverted: None,
            axes_y_inverted: None,
            axes_y_speed: None,
            axes_z_inverted: None,
            axes_z_speed: None,
            extruder_count: None,
            extruder_nozzle_diameter: None,
            extruder_shared_nozzle: None,
            heated_bed: None,
            heated_chamber: None,
            model: None,
            name,
            octoprint_key,
            volume_custom_box: None,
            volume_depth: None,
            volume_formfactor: None,
            volume_height: None,
            volume_origin: None,
            volume_width: None,
            url,
        }
    }
}