XR_KHR_extended_struct_name_lengths
String Nama
XR_KHR_extended_struct_name_lengths
Jenis Ekstensi
Ekstensi instance
Nomor Ekstensi Terdaftar
149
Revisi
2
Status Ratifikasi
Diratifikasi
Dependensi Ekstensi dan Versi
Tanggal Terakhir Diubah
2025-12-04
Status IP
Tidak ada klaim IP yang diketahui.
Kontributor
Matthew Langille, Meta Platforms
Andreas Selvik, Meta Platforms
Rylie Pavlik, Collabora, Ltd.
Ringkasan
Ekstensi ini memperluas ukuran nama struct maksimum dan menyediakan fungsi baru untuk mengakses nama yang diperluas ini.
xrStructureTypeToString2KHR disediakan untuk memungkinkan pengambilan nama string enumeran jenis struktur dengan panjang yang melebihi batas asli 63 byte (64 byte termasuk terminator null). xrStructureTypeToString2KHR menampilkan string nama untuk enumeran jenis struktur dengan panjang hingga 255 byte (256 byte termasuk terminator null). Aplikasi dapat menggunakan xrStructureTypeToString2KHR sebagai pengganti langsung untuk xrStructureTypeToString , karena berfungsi dengan semua enumeran jenis struktur, terlepas dari panjang nama string.
Mengambil String Enumeran Jenis Struktur
Jika xrStructureTypeToString asli digunakan untuk mengambil nama string untuk enumeran jenis struktur dengan panjang nama lebih dari 63 byte, perilakunya akan dijelaskan sebagai berikut. xrStructureTypeToString harus mengisi buffer dengan nama yang benar, kecuali bahwa string harus dipangkas pada batas titik kode agar sesuai dengan buffer yang tersedia. Artinya, string yang ditampilkan harus selalu berupa UTF-8 yang valid.
Fungsi xrStructureTypeToString2KHR ditentukan sebagai:
XrResult xrStructureTypeToString2KHR(
XrInstance instance,
XrStructureType value,
char buffer[XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR]);
Deskripsi Parameter
instanceadalah pengendali instance untuk meminta string.valueadalah nilai XrStructureType yang akan diubah menjadi string.bufferadalah buffer yang akan digunakan untuk menampilkan string.
Menampilkan nama nilai XrStructureType yang disediakan dengan menyalin string UTF-8 yang dihentikan null yang valid ke dalam buffer .
Dalam semua kasus, string yang ditampilkan harus salah satu dari:
Nilai Output String Jenis Struktur
- String literal yang ditentukan untuk nilai numerik yang disediakan dalam spesifikasi atau ekstensi inti. (misalnya, nilai
XR_TYPE_INSTANCE_CREATE_INFOmenghasilkan stringXR_TYPE_INSTANCE_CREATE_INFO) XR_UNKNOWN_STRUCTURE_TYPE_digabungkan dengan nomor jenis struktur yang dinyatakan sebagai angka desimal.
Untuk enumeran jenis struktur yang namanya sesuai dengan batas ukuran asli 63 byte, xrStructureTypeToString2KHR harus menampilkan string hasil yang sama dengan xrStructureTypeToString , hingga terminator null.
Penggunaan yang Valid (Implisit)
- Ekstensi
XR_KHR_extended_struct_name_lengthsharus diaktifkan sebelum memanggil xrStructureTypeToString2KHR -
instanceharus berupa pengendali XrInstance yang valid -
valueharus berupa nilai XrStructureType yang valid -
bufferharus berupa array karakter dengan panjangXR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR
Kode Status
XR_SUCCESS
XR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_INSTANCE_LOSTXR_ERROR_RUNTIME_FAILUREXR_ERROR_VALIDATION_FAILURE
Enumeran XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR menentukan ukuran buffer yang diteruskan ke xrStructureTypeToString2KHR .
#define XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR 256
Perintah Baru
Konstanta Enum Baru
XR_KHR_EXTENDED_STRUCT_NAME_LENGTHS_EXTENSION_NAMEXR_KHR_extended_struct_name_lengths_SPEC_VERSIONXR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR
Histori Versi
Revisi 1, 2024-02-29 (Matthew Langille)
- Deskripsi ekstensi awal
Revisi 2, 2025-12-04 (Kenny Vercaemer)
- Memperbaiki spesifikasi panjang nama struktur