clientapi-pve 2026.5.24

Generated from apidoc.js. NOT an official Proxmox specification. See https://pve.proxmox.com/pve-docs/api-viewer/ for the upstream documentation.
Documentation
/*
 * Proxmox Virtual Environment API
 *
 * Generated from apidoc.js. NOT an official Proxmox specification. See https://pve.proxmox.com/pve-docs/api-viewer/ for the upstream documentation.
 *
 * The version of the OpenAPI document: 9.x
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct NodesHardwarePciScanResponseDataInner {

    /// The PCI Class of the device.
    #[serde(rename = "class")]
    pub class: String,

    /// The Device ID.
    #[serde(rename = "device")]
    pub device: String,

    #[serde(rename = "device_name", skip_serializing_if = "Option::is_none")]
    pub device_name: Option<String>,

    /// The PCI ID.
    #[serde(rename = "id")]
    pub id: String,

    /// The IOMMU group in which the device is in. If no IOMMU group is detected, it is set to -1.
    #[serde(rename = "iommugroup")]
    pub iommugroup: i64,

    /// If set, marks that the device is capable of creating mediated devices.
    #[serde(rename = "mdev", skip_serializing_if = "Option::is_none")]
    pub mdev: Option<models::PveBoolean>,

    /// The Subsystem Device ID.
    #[serde(rename = "subsystem_device", skip_serializing_if = "Option::is_none")]
    pub subsystem_device: Option<String>,

    #[serde(rename = "subsystem_device_name", skip_serializing_if = "Option::is_none")]
    pub subsystem_device_name: Option<String>,

    /// The Subsystem Vendor ID.
    #[serde(rename = "subsystem_vendor", skip_serializing_if = "Option::is_none")]
    pub subsystem_vendor: Option<String>,

    #[serde(rename = "subsystem_vendor_name", skip_serializing_if = "Option::is_none")]
    pub subsystem_vendor_name: Option<String>,

    /// The Vendor ID.
    #[serde(rename = "vendor")]
    pub vendor: String,

    #[serde(rename = "vendor_name", skip_serializing_if = "Option::is_none")]
    pub vendor_name: Option<String>,


}

impl NodesHardwarePciScanResponseDataInner {
    pub fn new(class: String, device: String, id: String, iommugroup: i64, vendor: String) -> NodesHardwarePciScanResponseDataInner {
        NodesHardwarePciScanResponseDataInner {
            
            class,
            
            device,
            
            device_name: None,
            
            id,
            
            iommugroup,
            
            mdev: None,
            
            subsystem_device: None,
            
            subsystem_device_name: None,
            
            subsystem_vendor: None,
            
            subsystem_vendor_name: None,
            
            vendor,
            
            vendor_name: None,
            
        }
    }
}