houzhongjian
2024-11-06 7412dd652c0ac48c5a17b5d9b61d5d2a0f686137
提交 | 用户 | 时间
149dd0 1 package com.iailab.netsdk.lib.structure;
H 2
3 import com.iailab.netsdk.lib.NetSDKLib;
4 /**
5  * @author 251823
6  * @description 存储设备信息
7  * @date 2022/05/30
8  */
9 public class NET_STORAGE_DEVICE extends NetSDKLib.SdkStructure {
10     
11     public NET_STORAGE_DEVICE() {
12         this.dwSize = this.size();
13         for (int i = 0; i < stuPartitions.length; i ++) {
14             stuPartitions[i] =  new NET_STORAGE_PARTITION();
15         }
16     }
17     
18     public int                  dwSize;
19     public byte[]               szName = new byte[128];                            // 名称
20     public long                 nTotalSpace;                                    // 总空间, byte
21     public long                 nFreeSpace;                                     // 剩余空间, byte
22     public byte                    byMedia;                                        // 介质, 0-DISK, 1-CDROM, 2-FLASH
23     public byte                    byBUS;                                          // 总线, 0-ATA, 1-SATA, 2-USB, 3-SDIO, 4-SCSI
24     public byte                    byVolume;                                       // 卷类型, 0-物理卷, 1-Raid卷, 2-VG虚拟卷, 3-ISCSI, 4-独立物理卷, 5-全局热备卷, 6-NAS卷(包括FTP, SAMBA, NFS)
25     public byte                    byState;                                        // 物理硬盘状态, 参考NET_STORAGE_DEV_OFFLINE,取值为 NET_STORAGE_DEV_OFFLINE 和 NET_STORAGE_DEV_RUNNING 等
26     public int                     nPhysicNo;                                          // 同类设备存储接口的物理编号
27     public int                     nLogicNo;                                           // 同类设备存储接口的逻辑编号
28     public byte[]               szParent = new byte[128];                      // 上级存储组名称
29     public byte[]               szModule = new byte[128];                      // 设备模块
30     public byte[]               szSerial = new byte[48];                          // 设备序列号
31     public byte[]               szFirmware = new byte[64];                     // 固件版本
32     public int                     nPartitionNum;                                  // 分区数
33     public NET_STORAGE_PARTITION[] stuPartitions = (NET_STORAGE_PARTITION[])new NET_STORAGE_PARTITION().toArray(32);   // 分区信息
34     public NET_STORAGE_RAID stuRaid;                                        // RAID信息, 只对RAID有效(byVolume == 1)
35     public NET_ISCSI_TARGET stuISCSI;                                       // ISCSI信息, 只对ISCSI盘有效(byVolume == 3)
36     public int                    abTank;                                         // 扩展柜使能
37     public NET_STORAGE_TANK stuTank;                                        // 硬盘所在扩展柜信息, abTank为TRUE时有效
38
39     /**
40      * 硬盘电源状态
41      * {@link EM_STORAGE_DISK_POWERMODE}
42      */
43     public int                   emPowerMode;                    // 硬盘电源状态
44     
45     /**
46      * 硬盘预检状态(EVS字段,配合磁盘预检功能使用)
47      * {@link EM_STORAGE_DISK_PREDISKCHECK}
48      */
49     public int        emPreDiskCheck;                 // 硬盘预检状态(EVS字段,配合磁盘预检功能使用)
50     
51     public int  nOpState;         // 设备操作状态:      0: 正常工作状态, 1: 休眠中, 2: 等待格式化, 3: 格式化进行中, 
52                                  // 4: 等待碎片整理, 5: 碎片整理中, 6: 等待创建RAID 7: 创建RAID中, 8: 等待删除RAID, 9: 删除RAID中, 
53                                  // 10: 等待文件系统修复, 11: 文件系统修复中, 12: 等待预检, 13: 正在预检
54 }