Diese Seite wurde vollständig KI-generiert auf Basis von SWS Raw Data Stream (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.
Object for reading and writing binary data streams over a network connection.
Header-Datei
#include "ara/rds/raw_data_stream.h"
Scope
namespace ara::rds
उपयोगकर्ता गाइडएआई जनित
मॉडल किए गए पोर्ट्स पर नेटवर्क कनेक्शन के माध्यम से बाइनरी डेटा स्ट्रीम भेजने और प्राप्त करने में सक्षम बनाता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: effb63ab8311उद्गमखुले प्रश्न (3)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
मॉडल किए गए पोर्ट्स पर नेटवर्क कनेक्शन के माध्यम से बाइनरी डेटा स्ट्रीम भेजने और प्राप्त करने में सक्षम बनाता है।
क्लास ara::rds::RawDataStreamClient AUTOSAR Adaptive Platform AUTOSAR_AP_SWS_RawDataStream पृ. 1 पर नेटवर्क कनेक्शन के माध्यम से बाइनरी डेटा स्ट्रीम को पढ़ने और लिखने का काम करती है। इंस्टेंस स्थिर फ़ैक्टरी मेथड Create के माध्यम से बनाए जाते हैं, जिसके बाद Connect के साथ कनेक्शन स्थापित किया जाता है, ReadData और WriteData का उपयोग करके डेटा का आदान-प्रदान किया जाता है और Shutdown के माध्यम से सत्र समाप्त किया जाता है [SWS_RDS_10482]। एक गैर-प्रतिलिपि योग्य (non-copyable), केवल-स्थानांतरण योग्य (move-only) प्रकार के रूप में, यह ऑब्जेक्ट थ्रेड-सुरक्षित नहीं है, इसलिए समवर्ती कॉल्स को एप्लिकेशन पक्ष पर सिंक्रोनाइज़ किया जाना चाहिए।
संदर्भ
क्लास ara::rds::RawDataStreamClient विनिर्देश AUTOSAR_AP_SWS_RawDataStream पृ. 1 के अनुसार नेटवर्क कनेक्शन के माध्यम से बाइनरी डेटा स्ट्रीम भेजने और प्राप्त करने के लिए एक एंडपॉइंट के रूप में कार्य करती है। यह एक मॉडल किए गए पोर्ट के संचार कनेक्शन को समाहित करती है, जिसे रनटाइम पर ara::core::InstanceSpecifier के माध्यम से पहचाना और इंस्टैंशिएट किया जाता है [SWS_RDS_10482]। एप्लिकेशन सॉफ़्टवेयर संदेश-आधारित सेवा इंटरफ़ेस का सहारा लिए बिना असंरचित पेलोड डेटा को द्विदिशीय (bidirectionally) रूप से प्रसारित करने के लिए इस इंटरफ़ेस का उपयोग करता है। यह क्लास एक क्लाइंट के रूप में कार्य करती है जो नेटवर्क पर रिमोट एंडपॉइंट के साथ सक्रिय रूप से कनेक्शन स्थापित और नियंत्रित करता है।
जीवनचक्र
किसी इंस्टेंस का निर्माण केवल स्थिर फ़ैक्टरी मेथड Create[SWS_RDS_10482] के माध्यम से ही किया जाता है। यह मेथड थ्रेड-सुरक्षित है और सफल होने पर ara::core::Result के भीतर उपयोग के लिए तैयार क्लाइंट इंस्टेंस लौटाती है। स्वामित्व के संबंध में, ara::rds::RawDataStreamClient को केवल-मूव (move-only) प्रकार के रूप में डिज़ाइन किया गया है: कॉपी कंस्ट्रक्टर [SWS_RDS_11303] और कॉपी असाइनमेंट ऑपरेटर [SWS_RDS_11304] स्पष्ट रूप से हटा दिए गए हैं (=delete)। संसाधन का स्थानांतरण केवल मूव कंस्ट्रक्टर [SWS_RDS_11305] या मूव असाइनमेंट [SWS_RDS_11306] के माध्यम से मूव सेमांटिक्स द्वारा ही संभव है। इन मूव ऑपरेशन्स को गैर-थ्रेड-सुरक्षित के रूप में निर्दिष्ट किया गया है।
अपने लाइफ़साइकिल में ऑब्जेक्ट कई चरणों से गुजरता है: सफल इंस्टैंशिएशन के बाद कनेक्शन डिस्कनेक्टेड स्थिति में होता है। बिना पैरामीटर वाले Connect[SWS_RDS_10484] या कॉन्फ़िगर करने योग्य समयावधि [SWS_RDS_11307] के साथ कॉल करने पर, नेटवर्क कनेक्शन स्थापित हो जाता है और सक्रिय स्थिति में स्थानांतरित हो जाता है। कनेक्शन को Shutdown के माध्यम से स्पष्ट रूप से समाप्त किया जा सकता है, जिससे डेटा स्ट्रीम बंद हो जाती है [SWS_RDS_10485]। यदि इंस्टेंस नष्ट हो जाता है, तो डिस्ट्रक्टर ~RawDataStreamClient अभी भी खुले कनेक्शन को स्वचालित रूप से बंद करने और शट डाउन करने की गारंटी देता है [SWS_RDS_10483]। न तो इंस्टेंस मेथड्स और न ही डिस्ट्रक्टर थ्रेड-सुरक्षित हैं; इसलिए विभिन्न थ्रेड्स से समान इंस्टेंस तक पहुँच के लिए बाहरी सिंक्रोनाइज़ेशन की आवश्यकता होती है।
विशिष्ट उपयोग को इन चरणों में विभाजित किया गया है: आरंभीकरण (initialization), कनेक्शन स्थापना, पेलोड ट्रांसमिशन और कनेक्शन समाप्ति:
आरंभीकरण: एप्लिकेशन वांछित ara::core::InstanceSpecifier[SWS_RDS_10482] के साथ Create के माध्यम से क्लाइंट को इंस्टैंशिएट करता है।
कनेक्शन स्थापना: इसके बाद, Connect[SWS_RDS_10484] या टाइमआउट [SWS_RDS_11307] के साथ Connect का कॉल रिमोट एंडपॉइंट के साथ नेटवर्क कनेक्शन स्थापित करता है।
डेटा ट्रांसमिशन: कनेक्टेड स्थिति में, डेटा का आदान-प्रदान द्विदिशीय होता है। डेटा भेजने के लिए WriteData को कॉल किया जाता है, जहाँ डेटा को लंबाई के विनिर्देश के साथ std::unique_ptr<ara::core::Byte[]> के रूप में पास किया जाता है [SWS_RDS_10487], वैकल्पिक रूप से टाइमआउट [SWS_RDS_11310] के साथ। प्राप्त करने के लिए, अधिकतम पढ़े जाने वाले बफ़र आकार [SWS_RDS_10486] को निर्दिष्ट करते हुए ReadData का उपयोग किया जाता है, वैकल्पिक रूप से टाइमआउट [SWS_RDS_11309] के साथ भी। संभवतः, पढ़ने और लिखने के संचालन के निष्पादन के लिए पहले से सफलतापूर्वक स्थापित कनेक्शन की आवश्यकता होती है। प्रश्न (खुला)
कनेक्शन समाप्ति: डेटा का आदान-प्रदान पूरा होने के बाद, कनेक्शन को Shutdown का उपयोग करके व्यवस्थित रूप से समाप्त किया जाता है [SWS_RDS_10485]।
ara::rds::RawDataStreamClient के सभी मेथड्स त्रुटि और सफलता की प्रतिक्रियाओं के लिए मानक प्रकार ara::core::Result का उपयोग करते हैं और noexcept के साथ घोषित किए गए हैं, जिसका अर्थ है कि कोई C++ अपवाद नहीं फेंका जाता है। Connect के माध्यम से कनेक्शन स्थापना के दौरान त्रुटि होने पर, RdsErrc प्रकार का एक एरर कोड लौटाया जाता है [SWS_RDS_10484]। समय सीमा वाले वेरिएंट्स – Connect[SWS_RDS_11307], ReadData[SWS_RDS_11309] और WriteData[SWS_RDS_11310] – में निर्दिष्ट समयावधि (std::chrono::milliseconds) समाप्त होने पर संभवतः Result ऑब्जेक्ट में संबंधित टाइमआउट त्रुटि उत्पन्न होती है। प्रश्न Q-0ee603533c355c45 (खुला) इसी तरह, सक्रिय कनेक्शन के बिना पढ़ने या लिखने के मेथड्स को कॉल करना विफल होना चाहिए और RdsErrc से एक एरर कोड रिपोर्ट करना चाहिए। इसलिए कॉलर्स को बाद के संचालन करने से पहले सफलता के लिए प्रत्येक कॉल के रिटर्न मान की जाँच करनी चाहिए।
यह क्लास गाइड AUTOSAR Adaptive Platform R25-11 विनिर्देश के आधार पर ara::rds::RawDataStreamClient के मुख्य पहलुओं का सारांश प्रस्तुत करता है।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल