Class SynchronizedTimeBaseProvider is the access to the synchronized timebase referenced by the IntstanceSpecifier. It allows to get the current time_point, the rate deviation, the current status and the received user data
تُستخدم من قِبل تطبيقات توفير الوقت لضبط وتصحيح والتحقق من صحة قاعدة زمنية متزامنة على الناقل.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 29af5ad2e896المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم من قِبل تطبيقات توفير الوقت لضبط وتصحيح والتحقق من صحة قاعدة زمنية متزامنة على الناقل.
تُستخدم الفئة المقتصرة على النقل (move-only) ara::tsync::SynchronizedTimeBaseProvider من قِبل تطبيقات توفير الوقت للتغذية وتصحيح المعدل والتحقق من صحة قاعدة زمنية متزامنة [SWS_TS_01101][SWS_TS_01110]. يمكن للتحديثات إما إطلاق عمليات نقل فورية عبر الناقل أو جدولتها كتحديث محلي لدورة النقل التالية [SWS_TS_01107][SWS_TS_01108]. بينما تكون عمليات القراءة آمنة بالنسبة للخيوط (thread-safe)، تتطلب جميع الدوال المُعدِّلة بالإضافة إلى تسجيل المُخطِر (notifier) استدعاءً محليًا بالخيط أو متزامنًا [SWS_TS_01109][SWS_TS_01114].
السياق
توفر الفئة ara::tsync::SynchronizedTimeBaseProvider لتطبيقات توفير الوقت وصول التحكم النشط إلى قاعدة زمنية متزامنة، والتي يتم تشكيل نموذجها عبر ara::core::InstanceSpecifier[SWS_TS_01101]. في AUTOSAR Adaptive، تعمل النسخة كواجهة بين منطق التطبيق الموفِّر، وdaemon المحلي لمزامنة الوقت، وناقلات الاتصال المتصلة. من خلال هذا المكون، يُغذي التطبيق قيماً زمنية جديدة وبيانات حمولة مخصصة للمستخدم في النظام، ويعوض الانحرافات عبر تصحيحات المعدل ويسجل معلمات التحقق من الصحة [SWS_TS_01107][SWS_TS_01110][SWS_TS_01114].
يتم إنشاء النسخة بشكل صريح عبر ara::core::InstanceSpecifier، والذي يجب أن يشير إلى PortPrototype تمت كتابة نوعه بواسطة SynchronizedTimeBaseProviderInterface[SWS_TS_01101]. تم الإعلان عن المنشئ بأنه آمن من الاستثناءات وآمن بالنسبة للخيوط [SWS_TS_01101]. كائن الفئة هو كائن حصري مقتصر على النقل: تم حذف منشئ النسخ وعامل تعيين النسخ صراحةً [SWS_TS_01104][SWS_TS_01105]، في حين يتم دعم بناء النقل وتعيين النقل [SWS_TS_01102][SWS_TS_01103].
فيما يتعلق بالتزامن، ينطبق فصل صارم: عمليات القراءة البحتة للحالة مثل GetCurrentTime() وGetRateDeviation() وGetUserData() آمنة بالنسبة للخيوط ويمكن تنفيذها بشكل متزامن [SWS_TS_01109][SWS_TS_01111][SWS_TS_01113]. في المقابل، فإن جميع العمليات المُعدِّلة، وتسجيل الإخطارات، بالإضافة إلى تدمير الكائن عبر الهادم، ليست آمنة بالنسبة للخيوط وتتطلب مزامنة من جانب التطبيق [SWS_TS_01106][SWS_TS_01107][SWS_TS_01114].
مسار الاستخدام
ينقسم الاستخدام النموذجي إلى التسجيل للحصول على تعليقات التحقق من الصحة، بالإضافة إلى إرسال الوقت الدوري أو المدفوع بالأحداث:
تسجيل التحقق من الصحة: عند الحاجة، يودع تطبيق الموفِّر كائن إخطار عبر RegisterTimeValidationNotification() لتلقي كتل بيانات مزامنة الوقت المسجلة حديثًا [SWS_TS_01114]. يمكن أن يكون هناك مستلم إخطار واحد كحد أقصى نشطًا؛ تؤدي إعادة التسجيل إلى استبدال المستلم الحالي [SWS_TS_01114]، بينما يفك UnregisterTimeValidationNotification() الارتباط [SWS_TS_01115].
تعيين القيمة الزمنية: في حالة الحاجة إلى توزيع فوري، يستدعي التطبيق SetTime(). يؤدي هذا إلى تعيين القيمة الزمنية المحلية ويبدأ على الفور الإرسال عبر الناقل [SWS_TS_01107]. إذا كان النقل عبر الناقل يجب أن يتم بدلاً من ذلك في الدورة العادية التالية، يتم استخدام UpdateTime()، والذي من خلاله يتم تحديث الساعة محليًا فقط في البداية [SWS_TS_01108].
التصحيح وبيانات الحمولة: عبر SetRateCorrection()، يمكن ضبط انحراف الساعة المحلية بواسطة عامل تصحيح (القيم الأقل من 1.0 تبطئ الساعة، والقيم الأكبر من 1.0 تسرعها) [SWS_TS_01110]. يمكن تحديث بيانات القاعدة الزمنية الإضافية الخاصة بالمستخدم عبر SetUserData()[SWS_TS_01112].
تشير الدوال ذات القيمة المرجعة ara::core::Result<void> إلى حالات الفشل عبر رموز خطأ من النوع TsyncErrc دون دلالات التراجع (rollback):
TsyncErrc::kInvalidUserDataSize: يحدث مع SetTime() وUpdateTime() وSetUserData()، إذا تجاوزت UserData الممررة الحد الأقصى لطول UserData::kMaxUserDataSize (حاليًا 3 بايت) [SWS_TS_01107][SWS_TS_01108][SWS_TS_01112].
TsyncErrc::kDaemonConnectionLost: يحدث مع SetTime() إذا كان اتصال IPC مع daemon لمزامنة الوقت مقطوعًا في وقت الاستدعاء [SWS_TS_01107].
TsyncErrc::kLimitsExceeded: يُرجع من SetRateCorrection() إذا كان عامل تصحيح المعدل المطلوب خارج نطاق القيم المسموح به [SWS_TS_01110].
TsyncErrc::kFunctionNotSupported: يتم الإبلاغ عنه من SetRateCorrection() إذا كانت المنصة أو القاعدة الزمنية الأساسية لا تدعم تصحيح المعدل [SWS_TS_01110].
يعتمد هذا الدليل على مواصفات AUTOSAR Adaptive Platform R25-11 (الوحدة tsync) وتم إعداده لـ autodocs.
Method that can be used by time provider applications to receive time sync parameters. A maximum of one notifier can be registered. Every further registration overwrites the current registration.
A method that can be used to set a new time value for the clock. The clock value is only updated locally, transmission on the bus will happen in the next cycle.
Method that can be used by time provider applications to receive time sync parameters. A maximum of one notifier can be registered. Every further registration overwrites the current registration.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 89b44278d606المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تُعد الطريقة RegisterTimeValidationNotification جزءًا من الفئة ara::tsync::SynchronizedTimeBaseProvider وتُضمَّن عبر ملف الرأس #include "ara/tsync/synchronized_time_base_provider.h"[SWS_TS_01114]. وتخدم تطبيقات مزوّد الوقت لتلقي معلمات مزامنة الوقت [SWS_TS_01114]. يُمرَّر عبر المعلمة timeBaseValidationNotification مرجعٌ إلى كائن إخطار من النوع ProviderTimeBaseValidationNotification، والذي يتم إخطاره بمجرد توفر كتلة بيانات جديدة لقاعدة الوقت [SWS_TS_01114]. ولا تُرجع الطريقة أي قيمة إرجاع (void) [SWS_TS_01114].
معالجة الأخطاء
أُعلن عن الطريقة بوصفها noexcept وتمتلك الخاصية exception safe[SWS_TS_01114]. ولا ترمي أي استثناءات ولا تُرجع رموز أخطاء [SWS_TS_01114].
التزامن والقيود
يجب مراعاة القيود التالية عند الاستخدام:
حد التسجيل: يمكن تسجيل مُخطِر واحد على الأكثر؛ وكل تسجيل إضافي يستبدل التسجيل الحالي [SWS_TS_01114].
الأمان المؤشري: حُدِّدت الدالة بوصفها non_threadsafe[SWS_TS_01114]. ويجب مزامنة الاستدعاءات على نفس المثيل من جانب التطبيق في حال الوصول المتوازي.
تفاعل
بينما تنفّذ هذه الدالة التسجيل من جانب مزوّد الوقت (Provider) [SWS_TS_01114]، تمثّل الفئة ara::tsync::SynchronizedTimeBaseConsumer مع RegisterTimeValidationNotification والنوع ConsumerTimeBaseValidationNotification النظير الوظيفي لمستهلكي الوقت (Consumer) [SWS_TS_01016].
تم توليد ملاحظة الاستخدام هذه تلقائيًا على أساس مواصفة AUTOSAR.
Rate correction factor applied to the local clock value. A factor smaller than 1.0 slows down the local clock by that factor, a value greater than 1.0 speeds up the clock.
PortInterfaceMap- A PortPrototype that is referenced by a pingViolation TimeSyncPortPrototypeToTimeBaseMapping needs to be typed by a SynchronizedTimeBaseProviderInterface.
Parameter (in)
Parameter
Beschreibung
specifier
InstanceSpecifier to an PortPrototype of a PortPrototype typed by a SynchronizedTimeBaseProviderInterface
Request a governed re-review of this record. The record is not changed immediately.
Method that can be used by time provider applications to receive time sync parameters.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4be2caa7a1a0المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُوفَّر الطريقة UnregisterTimeValidationNotification للفئة ara::tsync::SynchronizedTimeBaseProvider عبر ملف الرأس ara/tsync/synchronized_time_base_provider.h[SWS_TS_01115]. وهي مخصصة لتطبيقات مزوّد الوقت (Time Provider Applications) في سياق مزامنة الوقت واستلام معلمات مزامنة الوقت [SWS_TS_01115]؛ واستنادًا إلى المعرّف، يُرجَّح أن يكون الغرض منها إلغاء تسجيل إخطار التحقق من الوقت المسجَّل مسبقًا. سؤال Q-49ba26b4b16dd5c7 (مفتوح)
تنطبق المتطلبات التالية فيما يتعلق بسياق الاستدعاء والدلالات:
التوقيع والإرجاع: لا تستقبل الدالة أي معلمات ولا تمتلك قيمة إرجاع (void) [SWS_TS_01115].
معالجة الأخطاء: أُعلن عن العملية بوصفها noexcept وحُدِّدت بأنها آمنة من الاستثناءات (exception safe) [SWS_TS_01115]. لا يُتوقَّع وجود رموز أخطاء أو إخطارات إلى DET أو DEM لهذه الواجهة.
التزامن: صُنِّفت الدالة صراحةً بوصفها non_threadsafe[SWS_TS_01115]. لذلك، يجب على المتصل مزامنة الاستدعاءات المتوازية على نفس المثيل من SynchronizedTimeBaseProvider.
في إطار تكامل بنية مزامنة الوقت، يوجد لمستقبلي الوقت (Time Consumer Applications) نظير مباشر في الفئة ara::tsync::SynchronizedTimeBaseConsumer (المعرَّفة في ara/tsync/synchronized_time_base_consumer.h)، والتي تتسم بخصائص متطابقة فيما يتعلق بالأمان المؤشري والأمان من الاستثناءات [SWS_TS_01017].
أُنشئت ملاحظة الاستخدام هذه آليًا وتستند حصريًا إلى المواصفة R25-11.
🚫Requirement entfallen: Dieses Element ist im gewählten Release nicht mehr enthalten.
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
Date
Actor
Transition
Reason / Rationale
Campaign
2026-08-13
tool
none → valid/unmigrated
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
2026-08-13-status-backfill
دالة UpdateTime [SWS_TS_01108]Upstream: RS_TS_00010 لم يُستورد النص بعد, RS_TS_00011 لم يُستورد النص بعد, RS_TS_00029 لم يُستورد النص بعد, RS_TS_00026 لم يُستورد النص بعد, RS_TS_00009 لم يُستورد النص بعد
A method that can be used to set a new time value for the clock. The clock value is only updated locally, transmission on the bus will happen in the next cycle.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a90a9a9d69eeالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تنتمي الطريقة UpdateTime من ملف الرأس ara/tsync/synchronized_time_base_provider.h إلى الفئة ara::tsync::SynchronizedTimeBaseProvider[SWS_TS_01108]. وتُستخدم لتحديد قيمة وقت جديدة للساعة. تستقبل الطريقة النقطة الزمنية المراد ضبطها timePoint مع معلمة القالب Duration بالإضافة إلى بيانات التطبيق المخصصة userData[SWS_TS_01108]. ويتم تحديث قيمة الساعة محليًا على الفور؛ أما النقل عبر الناقل فيحدث فقط في الدورة التالية [SWS_TS_01108].
معالجة الأخطاء
أُعلن عن الاستدعاء باستخدام noexcept ويُرجع ara::core::Result<void>[SWS_TS_01108]. وإذا تجاوز طول userData الممرَّرة الحد الأقصى المسموح به للحجم، والمحدد عبر UserData::kMaxUserDataSize بثلاثة بايتات حاليًا، تفشل العملية [SWS_TS_01108]. في هذه الحالة، يوفّر كائن النتيجة رمز الخطأ TsyncErrc::kInvalidUserDataSize، مع عدم توفير دلالات التراجع (no_rollback_semantics) لحالة الخطأ [SWS_TS_01108].
التزامن والقيود
يجب الانتباه لأغراض التكامل إلى أن UpdateTime محددة بأنها غير آمنة مؤشريًا (non_threadsafe) [SWS_TS_01108]. وإذا استُخدمت مثيلات SynchronizedTimeBaseProvider في سياقات تنفيذ متزامنة، يجب على التعليمات البرمجية المستدعية ضمان مزامنة مناسبة. ومع ذلك، تضمن الدالة أمان الاستثناءات (exception safe) [SWS_TS_01108].
أُنشئ هذا النص بواسطة ذكاء اصطناعي استنادًا إلى المواصفة.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني