XR_KHR_extended_struct_name_lengths
Name String
XR_KHR_extended_struct_name_lengths
एक्सटेंशन टाइप
इंस्टेंस एक्सटेंशन
रजिस्टर किया गया एक्सटेंशन नंबर
149
बदलाव
2
पुष्टि की स्थिति
मंज़ूरी दी गई
एक्सटेंशन और वर्शन की डिपेंडेंसी
पिछली बार बदलाव किए जाने की तारीख
2025-12-04
आईपी स्टेटस
आईपी से जुड़े किसी भी दावे की जानकारी नहीं है.
योगदान देने वाले
मैथ्यू लैंगिल, Meta Platforms
एंड्रियास सेल्विक, Meta Platforms
राइली पावलिक, Collabora, Ltd.
खास जानकारी
यह एक्सटेंशन, स्ट्रक्ट के नाम की ज़्यादा से ज़्यादा साइज़ को बढ़ाता है. साथ ही, इन नए एक्सटेंड किए गए नामों को ऐक्सेस करने के लिए एक नया फ़ंक्शन उपलब्ध कराता है.
xrStructureTypeToString2KHR फ़ंक्शन, स्ट्रक्चर टाइप के एन्यूमरेंट के स्ट्रिंग नाम पाने के लिए उपलब्ध कराया गया है. इन नामों की लंबाई, 63 बाइट की मूल सीमा से ज़्यादा होती है (इसमें नल टर्मिनेटर शामिल करने पर 64 बाइट होती है). xrStructureTypeToString2KHR फ़ंक्शन, स्ट्रक्चर टाइप के एन्यूमरेंट के लिए 255 बाइट तक की लंबाई वाली स्ट्रिंग के नाम दिखाता है (इसमें नल टर्मिनेटर शामिल करने पर 256 बाइट होती है). कोई ऐप्लिकेशन, xrStructureTypeToString के बदले xrStructureTypeToString2KHR का इस्तेमाल कर सकता है. ऐसा इसलिए, क्योंकि यह स्ट्रक्चर टाइप के सभी एन्यूमरेंट के साथ काम करता है. भले ही, स्ट्रिंग के नाम की लंबाई कुछ भी हो.
स्ट्रक्चर टाइप के एन्यूमरेंट स्ट्रिंग को वापस लाया जा रहा है
अगर 63 बाइट से ज़्यादा लंबाई वाले स्ट्रक्चर टाइप एन्यूमरेंट के लिए स्ट्रिंग के नाम वापस पाने के लिए, ओरिजनल xrStructureTypeToString का इस्तेमाल किया जाता है, तो इसके व्यवहार के बारे में यहां बताया गया है. xrStructureTypeToString को बफ़र में सही नाम डालना ज़रूरी है. हालांकि, स्ट्रिंग को कोडपॉइंट बाउंड्री पर काटना ज़रूरी है, ताकि वह उपलब्ध बफ़र में फ़िट हो सके. इसका मतलब है कि दिखाई गई स्ट्रिंग हमेशा मान्य UTF-8 फ़ॉर्मैट में होनी चाहिए.
xrStructureTypeToString2KHR फ़ंक्शन को इस तरह से परिभाषित किया गया है:
XrResult xrStructureTypeToString2KHR(
XrInstance instance,
XrStructureType value,
char buffer[XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR]);
पैरामीटर की जानकारी
instance, स्ट्रिंग का अनुरोध करने के लिए इंस्टेंस का हैंडल है.value, XrStructureType वैल्यू है, जिसे स्ट्रिंग में बदला जाना है.bufferवह बफ़र है जिसका इस्तेमाल स्ट्रिंग को वापस लाने के लिए किया जाएगा.
यह फ़ंक्शन, दी गई XrStructureType वैल्यू का नाम दिखाता है. इसके लिए, यह buffer में मान्य शून्य से खत्म होने वाली UTF-8 स्ट्रिंग को कॉपी करता है.
हर मामले में, दिखाई गई स्ट्रिंग इनमें से कोई एक होनी चाहिए:
स्ट्रक्चर टाइप स्ट्रिंग आउटपुट वैल्यू
- कोर स्पेसिफ़िकेशन या एक्सटेंशन में, दी गई संख्यात्मक वैल्यू के लिए तय की गई लिटरल स्ट्रिंग. (उदाहरण के लिए,
XR_TYPE_INSTANCE_CREATE_INFOकी वैल्यू से स्ट्रिंगXR_TYPE_INSTANCE_CREATE_INFOमिलती है) XR_UNKNOWN_STRUCTURE_TYPE_को स्ट्रक्चर टाइप नंबर के साथ जोड़ा जाता है. इसे दशमलव संख्या के तौर पर दिखाया जाता है.
स्ट्रक्चर टाइप के उन एन्यूमरेंट के लिए जिनके नाम, 63 बाइट की ओरिजनल साइज़ लिमिट में फ़िट होते हैं, xrStructureTypeToString2KHR को xrStructureTypeToString के बराबर स्ट्रिंग दिखानी ज़रूरी है. यह स्ट्रिंग, नल टर्मिनेटर तक होनी चाहिए.
मान्य इस्तेमाल (इंप्लिसिट)
- xrStructureTypeToString2KHR को कॉल करने से पहले,
XR_KHR_extended_struct_name_lengthsएक्सटेंशन को चालू करना ज़रूरी है -
instance, XrInstance का एक मान्य हैंडल होना चाहिए -
valueXrStructureType की मान्य वैल्यू होनी चाहिए -
buffer,XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHRलंबाई का वर्णों का एक ऐरे होना चाहिए
रिटर्न कोड
XR_SUCCESS
XR_ERROR_FUNCTION_UNSUPPORTEDXR_ERROR_HANDLE_INVALIDXR_ERROR_INSTANCE_LOSTXR_ERROR_RUNTIME_FAILUREXR_ERROR_VALIDATION_FAILURE
XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR एन्यूमरेंट, xrStructureTypeToString2KHR को पास किए गए बफ़र का साइज़ तय करता है .
#define XR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR 256
नए निर्देश
नए Enum कॉन्सटेंट
XR_KHR_EXTENDED_STRUCT_NAME_LENGTHS_EXTENSION_NAMEXR_KHR_extended_struct_name_lengths_SPEC_VERSIONXR_MAX_STRUCTURE_NAME_SIZE_EXTENDED_KHR
वर्शन इतिहास
पहला संशोधन, 29-02-2024 (मैथ्यू लैंगिल)
- एक्सटेंशन की शुरुआती जानकारी
दूसरा संशोधन, 04-12-2025 (कैनी वर्केमर)
- स्ट्रक्चर के नाम की लंबाई से जुड़ी समस्या ठीक करना