DEENESPTFRRUARHIKOZHNL

فئة ara::shwa::DeviceSelector

Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (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.

[AP_SWS_SHWA_00401] لم يُستورد النص بعد Upstream: RS_SHWA_00006

class DeviceSelector {...};

Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.

Header-Datei#include "ara/shwa/device_selector.h"
Scopenamespace ara::shwa

دليل المستخدممولَّد بالذكاء الاصطناعي

يُستخدم كواجهة مجردة لتقييم الأجهزة واختيارها استنادًا إلى استراتيجية اختيار محددة.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4c64c523c424 المصدر أسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يُستخدم كواجهة مجردة لتقييم الأجهزة واختيارها استنادًا إلى استراتيجية اختيار محددة.

يعرّف الصنف المجرد ara::shwa::DeviceSelector واجهة استراتيجية لتقييم الأجهزة الهدف واختيارها في النظام الفرعي shwa. ويتيح عبر SelectDevice() التحديد المباشر لجهاز مثالي، وعبر operator() التقييم المقارن لمرشحي الأجهزة المنفردين [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]. ويضمن المدمر الافتراضي القياسي تدميرًا آمنًا لكائنات الاستراتيجية المشتقة. وتشمل الشروط الحدية الأساسية أن الاستدعاءات ليست آمنة خيطيًا، وأنه لا تنطبق دلالات تراجع تلقائي عند الإخفاق.

السياق

يوفّر الصنف ara::shwa::DeviceSelector في الوحدة shwa واجهة مجردة لاختيار أجهزة العتاد أو الأجهزة الوظيفية (Device) أو تقييمها استنادًا إلى استراتيجية اختيار محددة. ويعمل كطبقة فصل بين تطبيق تحكم أعلى مستوى وإجراءات الاختيار الفعلية. وتشمل أطراف التفاعل المشاركة كلاً من التطبيق المستدعي، والتنفيذ الفعلي لاستراتيجية الاختيار، بالإضافة إلى الكائنات الهدف من النوع Device. وتعرّف الواجهة عمليتين رئيسيتين: الاختيار المباشر لجهاز عبر SelectDevice() [AP_SWS_SHWA_00403]، والتقييم الفردي المقارن لجهاز عبر عامل استدعاء الدالة operator() [AP_SWS_SHWA_00404].

DeviceSelectorKontext Anwendung Anwendung DeviceSelector DeviceSelector Anwendung->DeviceSelector يستخدم Device Device DeviceSelector->Device selektiert / bewertet

مخطط سياق: تضمين DeviceSelector بين التطبيق وأهداف الأجهزة. المصادر: [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]

دورة الحياة

بصفته صنفًا أساسيًا مجردًا ذا دوال افتراضية بحتة، لا يمكن إنشاء كائنات من DeviceSelector مباشرة. ويُرجَّح تنفيذ استراتيجيات اختيار فعلية كأصناف مشتقة وإنشاؤها بواسطة مكون التطبيق. سؤال Q-4e22b2e57ef141e9 (مفتوح) وتقع إدارة علاقات الملكية عادةً على عاتق التطبيق، على سبيل المثال عبر مؤشرات ذكية مثل std::unique_ptr<DeviceSelector>. ولإجراء تدمير متعدد الأشكال نظيف للأصناف المتخصصة، تعلن الواجهة عن مدمر افتراضي قياسي ~DeviceSelector() [AP_SWS_SHWA_00402]. أُعلن عن هذا المدمر صراحة كـ noexcept، وبذلك يلبي متطلبات أمان الاستثناءات (exception safe) عند تفكيك الكائنات [AP_SWS_SHWA_00402].

فيما يتعلق بالتزامن وانتقالات الحالة، صُنفت عمليات الواجهة على أنها غير آمنة خيطيًا (not thread-safe) [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]. ورغم أن دوال الأعضاء مزودة بتعليق توضيحي const، إلا أنه لا يجوز إجراء وصول متزامن إلى نفس النسخة من خيوط مختلفة دون مزامنة خارجية. علاوة على ذلك، لا تنص المواصفة على تراجع تلقائي للاستدعاءات الخاطئة (no_rollback_semantics) [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404].

مسار الاستخدام

يتضمن مسار الاستخدام النموذجي تهيئة كائن استراتيجية فعلي يليه تقييم مرشحي الأجهزة أو اختيارهم. وتوجد هنا مسارا استدعاء أساسيان:

  • الاختيار المباشر للجهاز: يستدعي التطبيق الدالة غير المحددة بمعاملات SelectDevice() [AP_SWS_SHWA_00403]. تحدد الاستراتيجية الفعلية بشكل ذاتي الجهاز الأكثر ملاءمة وتُرجع ara::core::Result<Device>.
  • التقييم الفردي التكراري: في خوارزميات تصفية عدة مرشحين أو فرزهم، يمرر التطبيق النسخ المعنية تباعًا إلى operator()(const Device &device) [AP_SWS_SHWA_00404]. يُرجَّح أن يحلل التقييم عبر operator() داخليًا الخصائص ذات الصلة أو حالات التشغيل للجهاز المُمرَّر. سؤال Q-8ba0b9b900196d50 (مفتوح) ويُرجَّح أن تعكس قيمة int المُرجعة في ara::core::Result<int> مؤشر ملاءمة أو أولوية تتخذ جهة الاستدعاء بناءً عليه قرار الاختيار.
تسلسلات الاستدعاء لتقييم الأجهزة واختيارهاالتطبيقDeviceSelectorUse Case: تقييم فردي لجهاز مرشحoperator()(device)altErfolgreiche AuswertungResult<int> (Bewertungswert)Ressource belegtShwaErrorCode::kResourceBusyUse Case: اختيار مباشر للجهازSelectDevice()altErfolgreiche SelektionResult<Device>الوظيفة غير مدعومةShwaErrorCode::kFeatureNotSupported

مخطط تسلسل: تسلسلات الاستدعاء للتقييم الفردي والاختيار المباشر بما في ذلك معالجة الأخطاء. المصادر: [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]

سيناريوهات الأخطاء

أُعلن عن كلتا دالتي الاختيار كـ noexcept ولا ترميان أي استثناءات ++C‏ (exception safe). وعوضًا عن ذلك، تشيران إلى الإخفاقات عبر قناة الأخطاء الخاصة بـ ara::core::Result. يجب على التطبيقات دائمًا فحص القيمة المُرجعة بحثًا عن أخطاء قبل الوصول إلى النتيجة. وحالات الخطأ التالية محددة لـ SelectDevice() وoperator():

  • ShwaErrorCode::kResourceBusy: تعذر تنفيذ العملية المطلوبة لأن المورد المطلوب مشغول حاليًا [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]. وفي هذه الحالة، يمكن للتطبيق تكرار الاستدعاء في وقت لاحق أو اختيار استراتيجية بديلة.
  • ShwaErrorCode::kFeatureNotSupported: تُرجع إذا كانت الوظيفة المطلوبة للاختيار أو التقييم غير مدعومة من قِبل التنفيذ الأساسي [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404].

نظرًا لعدم وجود دلالات تراجع (no_rollback_semantics) [AP_SWS_SHWA_00403]، [AP_SWS_SHWA_00404]، يظل النظام في حالة الخطأ ضمن الحالة الحالية، وتكون جهة الاستدعاء مسؤولة عن تدابير التعويض المناسبة. وشرط مسبق لـ operator() ينص أيضًا على وجوب بقاء مرجع الجهاز المُمرَّر صالحًا طوال مدة الاستدعاء بالكامل.

يستند دليل الصنف هذا إلى مواصفة AUTOSAR Adaptive R25-11 (الوحدة shwa) وتم تنقيحه آليًا.

خريطة الأعضاء

المُنشئات والمُتلف

1

الدوال الأعضاء

1

المعاملات

1

عرض التفاصيل

اختر عنصرًا من المخطط.

المُنشئات والمُتلف

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

virtual ~DeviceSelector () noexcept=default;

الدوال الأعضاء

SelectDevice دالة

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

virtual ara::core::Result< Device > SelectDevice () const noexcept=0;

المعاملات

operator() دالة

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

virtual ara::core::Result< int > operator() (const Device &device) const noexcept=0;

التفاصيل

دالة ~DeviceSelector [AP_SWS_SHWA_00402] Upstream: RS_SHWA_00006

virtual ~DeviceSelector () noexcept=default;

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

Scopeclass ara::shwa::DeviceSelector
Exception Safetyexception safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00402
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00402@rel:R25-11#2c6b0c77
Content hash
2c6b0c77
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00402
Status: valid/unmigrated Version: rel:R25-11#8e9d36b4 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00402@rel:R25-11#8e9d36b4
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

دالة SelectDevice [AP_SWS_SHWA_00403] Upstream: RS_SHWA_00006, RS_SHWA_00007

virtual ara::core::Result< Device > SelectDevice () const noexcept=0;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::DeviceSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00403
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00403@rel:R25-11#9d930f4f
Content hash
9d930f4f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00403
Status: valid/unmigrated Version: rel:R25-11#83b7e520 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00403@rel:R25-11#83b7e520
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

دالة operator() [AP_SWS_SHWA_00404] Upstream: RS_SHWA_00006, RS_SHWA_00007

virtual ara::core::Result< int > operator() (const Device &device) const noexcept=0;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::DeviceSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00404
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00404@rel:R25-11#af0af725
Content hash
af0af725
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00404
Status: valid/unmigrated Version: rel:R25-11#2bfa9942 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00404@rel:R25-11#2bfa9942
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill