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.
Инкапсулирует контрольные данные и поля заголовков датаграмм IEEE 1722 NTSCF для обработки в потоках необработанных данных.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 34ffc7c706f6ПроисхождениеОткрытые вопросы (3)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Инкапсулирует контрольные данные и поля заголовков датаграмм IEEE 1722 NTSCF для обработки в потоках необработанных данных.
Класс ara::rds::IEEE1722DatagramNTSCF представляет структуру данных для управляющих датаграмм IEEE 1722 NTSCF в составе модуля Raw Data Stream SWS RawDataStream «Specification of Raw Data Stream». Он инкапсулирует протокольно-специфичные поля, такие как порядковый номер, адресные данные и уникальные идентификаторы, в защищенных атрибутах, доступных специализированным классам датаграмм. Безопасный жизненный цикл при полиморфном использовании обеспечивается виртуальным деструктором [SWS_RDS_90310]. Важнейшее граничное условие состоит в том, что уничтожение обязательно должно выполняться без генерации исключений, а опциональные поля перед обращением к ним должны проверяться на наличие.
Контекст
Класс ara::rds::IEEE1722DatagramNTSCF представляет в составе модуля AUTOSAR Adaptive rds (Raw Data Stream) согласно SWS RawDataStream «Specification of Raw Data Stream» структуру датаграммы IEEE 1722 в формате NTSCF (Non-Time-Synchronous Control Format). Класс объединяет поля протокола, специфицированные для обмена некритичными ко времени потоками контрольных и полезных данных. Заголовочный файл #include "ara/rds/raw_data_stream_IEEE1722.h" объявляет класс в пространстве имен ara::rds. К специфицированным компонентам относятся уникальный идентификатор потока unique_id[SWS_RDS_90309], порядковый номер sequenceNum[SWS_RDS_90307], а также информация о длине и адресе ntscf_data_length и mac_address[SWS_RDS_90306], [SWS_RDS_90308].
Примечательно, что все элементы данных имеют уровень доступа protected. В качестве интерпретации из этого можно сделать вывод, что класс служит фундаментальным базовым классом для производных, специфичных для протокола структур датаграмм и, вероятно, не предназначен для прямого инстанцирования штатной логикой приложения. Вопрос Q-10e9faa973973eda (открытый)
Жизненный цикл
Жизненный цикл ara::rds::IEEE1722DatagramNTSCF рассчитан на безопасную работу в объектно-ориентированных иерархиях наследования. Центральным элементом является виртуальный деструктор ~IEEE1722DatagramNTSCF() noexcept согласно [SWS_RDS_90310]. За счет виртуальности гарантируется, что при уничтожении производного экземпляра через указатель на базовый класс цепочка деструкторов отрабатывается полностью и корректно.
Объявление с noexcept[SWS_RDS_90310] гарантирует, что уничтожение объекта ни при каких обстоятельствах не генерирует исключений. Это соответствует ключевым требованиям современного управления ресурсами в C++ и обеспечивает безопасность относительно исключений в случае ошибок.
Открытые конструкторы в объеме спецификации не приводятся. Поэтому создание объекта, по всей видимости, осуществляется либо производными классами в рамках их инициализации, либо через внутренние механизмы создания модуля Raw Data Stream. Вопрос Q-4a0e75e3e565d2d5 (открытый) Класс не имеет фиксированных состояний или внутреннего конечного автомата; объект с момента создания и до уничтожения остается в согласованном состоянии в качестве носителя информации.
Путь использования
Использование класса обычно происходит в процессе обработки потоков контрольных данных согласно IEEE 1722. Производные классы или компоненты фреймворка потоков необработанных данных используют защищенные атрибуты для сериализации или десериализации передаваемых пакетов. Атрибуты определены как элементарные целочисленные типы или как ara::core::Optional. Типичная цепочка обработки делится на следующие шаги:
Идентификация потока данных: на основе unique_id[SWS_RDS_90309] проверяется, к какому логическому потоку данных относится датаграмма.
Проверка последовательности: с помощью порядкового номера sequenceNum[SWS_RDS_90307] можно определить, прибыли ли пакеты в ожидаемом порядке или имеют место потери.
Анализ длины и адреса: с помощью полей ntscf_data_length и mac_address[SWS_RDS_90306], [SWS_RDS_90308] определяется размер полезных данных и анализируется адрес назначения или источника.
После анализа полезных данных путь использования завершается освобождением экземпляра через виртуальный деструктор [SWS_RDS_90310].
Сценарии ошибок
Из-за характера ara::rds::IEEE1722DatagramNTSCF как структуры данных и базового класса ошибки возникают не в форме кодов возврата методов, а касаются предусловий при доступе к данным и уничтожении:
Непроверенный доступ к опциональным полям: такие атрибуты, как sequenceNum[SWS_RDS_90307] и unique_id[SWS_RDS_90309], объявлены как ara::core::Optional. Доступ без предварительной проверки с помощью has_value() приводит в случае неполных пакетов к ошибкам времени выполнения или неопределенному поведению.
Нарушение гарантии noexcept в деструкторе: поскольку деструктор специфицирован с noexcept[SWS_RDS_90310], любое исключение, выброшенное во время очистки в производных классах и не обработанное локально, приводит к немедленному аварийному завершению программы через std::terminate.
Несогласованные указания длины: если значение ntscf_data_length[SWS_RDS_90306], [SWS_RDS_90308] не совпадает с фактическим размером буфера сетевого драйвера, при обработке данных могут возникнуть переполнения буфера или неполное чтение.
Настоящее руководство по классу основано на спецификации AUTOSAR AP R25-11 модуля Raw Data Stream (rds) и создано автоматически.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал