फ़ाइल ट्रांसफर सेवाओं में संपीड़ित और असंपीड़ित फ़ाइल आकारों को बाइट्स में एनकैप्सुलेट करने का कार्य करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: a9f49ae913f1उद्गमखुले प्रश्न (3)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
फ़ाइल ट्रांसफर सेवाओं में संपीड़ित और असंपीड़ित फ़ाइल आकारों को बाइट्स में एनकैप्सुलेट करने का कार्य करता है।
संरचना ara::diag::FileTransferService::FileSizes AUTOSAR Adaptive Platform [SWS_DM_01321] के डायग्नोस्टिक्स मॉड्यूल के भीतर फ़ाइल आकार विनिर्देशों को एनकैप्सुलेट करने के लिए एक मानकीकृत वैल्यू ऑब्जेक्ट के रूप में कार्य करती है। यह ट्रांसफर ऑपरेशनों की तैयारी और निगरानी के लिए दो सार्वजनिक 64-बिट पूर्णांक चरों में फ़ाइल के असंपीड़ित और संपीड़ित बाइट आकार को बंडल करती है [SWS_DM_01322]। एक पैसिव डेटा रिकॉर्ड के रूप में, इस संरचना के पास न तो अपने स्वयं के तरीके हैं और न ही आंतरिक त्रुटि प्रबंधन, इसलिए पास किए गए मानों की व्यवहार्यता जाँच और थ्रेड-सुरक्षा कॉलिंग घटकों द्वारा सुनिश्चित की जानी चाहिए।
संदर्भ
संरचना ara::diag::FileTransferService::FileSizes AUTOSAR Adaptive Platform [SWS_DM_01321] में डायग्नोस्टिक्स मॉड्यूल (diag) का एक अभिन्न अंग है। उच्च-स्तरीय सेवा ara::diag::FileTransferService के नेमस्पेस के भीतर, यह पूर्ण फ़ाइल आकार विनिर्देशों का प्रतिनिधित्व करने के लिए एक कॉम्पैक्ट डेटा मॉडल को परिभाषित करती है AUTOSAR_AP_SWS_Diagnostics §8.18.2 “Struct: FileSizes”। प्रकार को हेडर फ़ाइल ara/diag/file_transfer.h[SWS_DM_01322] के माध्यम से घोषित किया जाता है। इसकी प्राथमिक ज़िम्मेदारी फ़ाइल ट्रांसफर ऑपरेशनों के लिए प्रासंगिक आकार की जानकारी को एक समान डेटा संरचना में बंडल करना है, ताकि इंटरैक्ट करने वाले प्लेटफ़ॉर्म और एप्लिकेशन घटक फ़ाइल आकारों का सुसंगत रूप से आदान-प्रदान कर सकें AUTOSAR_AP_SWS_Diagnostics पृ. 1126।
कार्यात्मक दृष्टिकोण से, डेटा संरचना दो अलग-अलग आकार विनिर्देशों को कैप्चर करती है: तत्व uncompressed_size[SWS_DM_01322] के माध्यम से फ़ाइल का असंपीड़ित कुल आकार और तत्व compressed_size[SWS_DM_01323] के माध्यम से संपीड़ित कुल आकार। दोनों मान बाइट्स की माप इकाई में अहस्ताक्षरित 64-बिट पूर्णांक (std::uint64_t) के रूप में रखे जाते हैं। नतीजतन, FileSizes डायग्नोस्टिक क्लाइंट्स, Diagnostic Management और अनुकूली प्लेटफ़ॉर्म पर फ़ाइल ट्रांसफर को संभालने वाले ठोस सेवा प्रदाताओं के बीच एक सिमेंटिक सूचना वाहक के रूप में कार्य करता है।
जीवनचक्र
संरचना ara::diag::FileTransferService::FileSizes को बिना किसी वर्चुअल मेथड या जटिल इनहेरिटेंस पदानुक्रम के एक शुद्ध डेटा रिकॉर्ड (वैल्यू ऑब्जेक्ट) के रूप में मॉडल किया गया है AUTOSAR_AP_SWS_Diagnostics §8.18.2.1 “Public Member Variables”। इसका निर्माण आमतौर पर सीधे कॉल स्टैक पर या पैरेंट डेटा संरचना के सदस्य के रूप में होता है। चूंकि इसमें केवल मानक पूर्णांक प्रकार शामिल हैं, इसलिए संरचना डिफ़ॉल्ट रूप से कॉपी करने योग्य और स्थानांतरित करने योग्य दोनों होनी चाहिए और इसके लिए हीप पर डायनामिक मेमोरी प्रबंधन की आवश्यकता नहीं होनी चाहिए। प्रश्न Q-f9c6e76fc8c62463 (खुला)
स्वामित्व संबंध संबंधित उपयोग संदर्भ पर निर्भर करते हैं: यदि कोई इंस्टेंस किसी डायग्नोस्टिक एप्लिकेशन द्वारा बनाया जाता है, तो स्वामित्व उस एप्लिकेशन के पास रहता है या वैल्यू द्वारा पास (Pass-by-Value) के माध्यम से कॉल किए गए इंटरफ़ेस फ़ंक्शंस को स्थानांतरित हो जाता है। इंस्टेंस का विनाश सामान्य है और अतिरिक्त क्लीनअप लॉजिक के बिना स्कोप से बाहर निकलते ही स्वचालित रूप से हो जाता है। चूंकि प्रकार कोई आंतरिक सिंक्रोनाइज़ेशन तंत्र प्रदान नहीं करता है, इसलिए एक ही इंस्टेंस पर समवर्ती एक्सेस के मामले में समन्वित और थ्रेड-सुरक्षित उपयोग संभवतः पूरी तरह से शामिल डायग्नोस्टिक या एप्लिकेशन घटकों की ज़िम्मेदारी है। प्रश्न Q-d2e83f9098c7f8c8 (खुला)
उपयोग पथ
संरचना का विशिष्ट उपयोग आरंभीकरण, पैरामीटर असाइनमेंट और FileTransferService[SWS_DM_01321] के ट्रांसफर रूटीन में पास करने के चरणों में विभाजित है। एक विशिष्ट उपयोग के मामले में, फ़ाइल ट्रांसफर शुरू करने से पहले एक प्रेषक घटक फ़ाइल सिस्टम पर या मेमोरी में वास्तविक फ़ाइल आयामों को निर्धारित करता है। इसके बाद, यह FileSizes को इंस्टेंटिएट करता है और दो सार्वजनिक चरों को मापे गए बाइट मान निर्दिष्ट करता है:
uncompressed_size: मूल फ़ाइल का पूर्ण आकार बाइट्स में निर्दिष्ट करता है [SWS_DM_01322]।
compressed_size: ट्रांसफर किए जाने वाले डेटा स्ट्रीम का संपीड़ित आकार बाइट्स में निर्दिष्ट करता है [SWS_DM_01323]।
यदि कोई फ़ाइल पूर्व संपीड़न के बिना ट्रांसफर की जाती है, तो संभवतः compressed_size और uncompressed_size समान मान ले जाएंगे। प्रश्न Q-1edcb924fd5932ee (खुला) आरंभीकरण के बाद, संरचना को संबंधित फ़ाइल ट्रांसफर विधियों में पास किया जाता है, ताकि रिमोट एंड्स मेमोरी आवश्यकताओं को पहले से आवंटित कर सकें और ट्रांसफर प्रगति की सटीक निगरानी कर सकें AUTOSAR_AP_SWS_Diagnostics पृ. 77।
त्रुटि परिदृश्य
ara::diag::FileTransferService::FileSizes के विनिर्देश में कोई विशिष्ट डायग्नोस्टिक त्रुटि कोड, रिटर्न मान या अपवाद परिभाषित नहीं हैं AUTOSAR_AP_SWS_Diagnostics §8.18.2 “Struct: FileSizes”। एक पैसिव डेटा प्रकार के रूप में, संरचना स्वयं कोई त्रुटि संदेश ट्रिगर नहीं करती है और रनटाइम पर दर्ज किए गए मानों को मान्य नहीं करती है।
संभावित त्रुटियां मुख्य रूप से पैरामीटर भरने के दौरान गलत पूर्व-शर्तों और उत्तर-शर्तों से उत्पन्न होती हैं। प्रकार std::uint64_t के माध्यम से $2^{64}-1$ बाइट्स तक के मानों को मैप किया जा सकता है [SWS_DM_01322], [SWS_DM_01323]। यदि कोई घटक अमान्य आकारों को पास करता है - उदाहरण के लिए मौजूदा फ़ाइलों के लिए शून्य बाइट्स का मान या एक संपीड़ित आकार जो बिना किसी प्रशंसनीय स्पष्टीकरण के असंपीड़ित आकार से काफी अधिक हो जाता है - तो इसे FileTransferService के अपस्ट्रीम या डाउनस्ट्रीम प्रोसेसिंग लॉजिक द्वारा इंटरसेप्ट किया जाना चाहिए। उपलब्ध लक्ष्य मेमोरी का ओवरफ्लो भी एक उच्च-स्तरीय त्रुटि परिदृश्य का प्रतिनिधित्व करता है, जिसे डेटा ट्रांसफर शुरू होने से पहले FileSizes में प्रेषित बाइट मानों के आधार पर पहचाना जाना चाहिए।
यह क्लास गाइड AUTOSAR Adaptive Platform R25-11 विनिर्देश (मॉड्यूल diag) पर आधारित है और autodocs के लिए बनाई गई थी।
UML क्लास आरेख
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल