Win32 API 日本語リファレンス
ホームSystem.Ioctl › STORAGE_PROTOCOL_NVME_DATA_TYPE

STORAGE_PROTOCOL_NVME_DATA_TYPE

列挙型
基底型i4

メンバー 6

名前10進16進説明
NVMeDataTypeUnknown00x0不明なデータ型です。
NVMeDataTypeIdentify10x1Identify データ型です。これは Identify Controller データまたは Identify Namespace データのいずれかになります。この種類のデータを照会する場合、STORAGE_PROTOCOL_SPECIFIC_DATA の ProtocolDataRequestValue フィールドは、アダプターに対しては NVME_IDENTIFY_CNS_CONTROLLER、名前空間に対しては NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE の値になります。ProtocolDataRequestValue が NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE の場合、STORAGE_PROTOCOL_SPECIFIC_DATA 構造体の ProtocolDataRequestSubValue フィールドには名前空間 ID の値が入ります。
NVMeDataTypeLogPage20x2ログ ページのデータ型です。
NVMeDataTypeFeature30x3機能 (Feature) のデータ型です。
NVMeDataTypeLogPageEx40x4
NVMeDataTypeFeatureEx50x5

公式ドキュメント

IOCTL_STORAGE_QUERY_PROPERTY 要求の実行時に照会する、NVMe プロトコル固有データの種類を示します。

解説(Remarks)

IOCTL_STORAGE_QUERY_PROPERTY を使用して STORAGE_PROTOCOL_DATA_DESCRIPTOR 内のプロトコル固有情報を取得する場合は、STORAGE_PROPERTY_QUERY 構造体を次のように設定します。

NVMe プロトコル固有情報の種類を指定するには、STORAGE_PROTOCOL_SPECIFIC_DATA 構造体を次のように設定します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum STORAGE_PROTOCOL_NVME_DATA_TYPE : int {
    NVMeDataTypeUnknown = 0,
    NVMeDataTypeIdentify = 1,
    NVMeDataTypeLogPage = 2,
    NVMeDataTypeFeature = 3,
    NVMeDataTypeLogPageEx = 4,
    NVMeDataTypeFeatureEx = 5
} STORAGE_PROTOCOL_NVME_DATA_TYPE;
public enum STORAGE_PROTOCOL_NVME_DATA_TYPE : int
{
    NVMeDataTypeUnknown = 0,
    NVMeDataTypeIdentify = 1,
    NVMeDataTypeLogPage = 2,
    NVMeDataTypeFeature = 3,
    NVMeDataTypeLogPageEx = 4,
    NVMeDataTypeFeatureEx = 5,
}
Public Enum STORAGE_PROTOCOL_NVME_DATA_TYPE As Integer
    NVMeDataTypeUnknown = 0
    NVMeDataTypeIdentify = 1
    NVMeDataTypeLogPage = 2
    NVMeDataTypeFeature = 3
    NVMeDataTypeLogPageEx = 4
    NVMeDataTypeFeatureEx = 5
End Enum
import enum

class STORAGE_PROTOCOL_NVME_DATA_TYPE(enum.IntEnum):
    NVMeDataTypeUnknown = 0
    NVMeDataTypeIdentify = 1
    NVMeDataTypeLogPage = 2
    NVMeDataTypeFeature = 3
    NVMeDataTypeLogPageEx = 4
    NVMeDataTypeFeatureEx = 5
// STORAGE_PROTOCOL_NVME_DATA_TYPE
pub const NVMeDataTypeUnknown: i32 = 0;
pub const NVMeDataTypeIdentify: i32 = 1;
pub const NVMeDataTypeLogPage: i32 = 2;
pub const NVMeDataTypeFeature: i32 = 3;
pub const NVMeDataTypeLogPageEx: i32 = 4;
pub const NVMeDataTypeFeatureEx: i32 = 5;
// STORAGE_PROTOCOL_NVME_DATA_TYPE
const (
	NVMeDataTypeUnknown int32 = 0
	NVMeDataTypeIdentify int32 = 1
	NVMeDataTypeLogPage int32 = 2
	NVMeDataTypeFeature int32 = 3
	NVMeDataTypeLogPageEx int32 = 4
	NVMeDataTypeFeatureEx int32 = 5
)
const
  NVMeDataTypeUnknown = 0;
  NVMeDataTypeIdentify = 1;
  NVMeDataTypeLogPage = 2;
  NVMeDataTypeFeature = 3;
  NVMeDataTypeLogPageEx = 4;
  NVMeDataTypeFeatureEx = 5;
// STORAGE_PROTOCOL_NVME_DATA_TYPE
pub const NVMeDataTypeUnknown: i32 = 0;
pub const NVMeDataTypeIdentify: i32 = 1;
pub const NVMeDataTypeLogPage: i32 = 2;
pub const NVMeDataTypeFeature: i32 = 3;
pub const NVMeDataTypeLogPageEx: i32 = 4;
pub const NVMeDataTypeFeatureEx: i32 = 5;
const
  NVMeDataTypeUnknown* = 0
  NVMeDataTypeIdentify* = 1
  NVMeDataTypeLogPage* = 2
  NVMeDataTypeFeature* = 3
  NVMeDataTypeLogPageEx* = 4
  NVMeDataTypeFeatureEx* = 5
enum STORAGE_PROTOCOL_NVME_DATA_TYPE : int {
    NVMeDataTypeUnknown = 0,
    NVMeDataTypeIdentify = 1,
    NVMeDataTypeLogPage = 2,
    NVMeDataTypeFeature = 3,
    NVMeDataTypeLogPageEx = 4,
    NVMeDataTypeFeatureEx = 5,
}
#define global NVMeDataTypeUnknown   0x0
#define global NVMeDataTypeIdentify  0x1
#define global NVMeDataTypeLogPage   0x2
#define global NVMeDataTypeFeature   0x3
#define global NVMeDataTypeLogPageEx 0x4
#define global NVMeDataTypeFeatureEx 0x5