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 Clock Reference Format для синхронизации времени в потоках необработанных данных.
СОЗДАНО ИИне провереноМодель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: 5538d6188cf1ПроисхождениеОткрытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал
Инкапсулирует и управляет датаграммами формата IEEE 1722 Clock Reference Format для синхронизации времени в потоках необработанных данных.
В модуле rds класс служит представлением датаграмм Clock Reference Format согласно стандарту IEEE 1722 AUTOSAR_AP_SWS_RawDataStream с. 1. Он инкапсулирует специфичную для протокола информацию заголовка и тактовой синхронизации в защищённых опциональных полях данных и предоставляет виртуальный деструктор для полиморфного освобождения памяти [SWS_RDS_90304]. Приложения используют производные структуры для конфигурации данных тактовой синхронизации и перед доступом должны проверять валидность содержащихся опциональных значений. Это обеспечивает гибкую и безошибочную обработку гетерогенных потоков данных.
Контекст
Класс ara::rds::IEEE1722DatagramCRF представляет внутри функционального кластера Raw Data Stream (rds) AUTOSAR Adaptive Platform датаграмму для Clock Reference Format (CRF) согласно стандарту IEEE 1722 AUTOSAR_AP_SWS_RawDataStream с. 1. Структура определяется в заголовочном файле ara/rds/raw_data_stream_IEEE1722.h[SWS_RDS_90304]. Класс служит для инкапсуляции и предоставления специфичных для протокола метаданных и атрибутов синхронизации, необходимых для передачи тактовых опорных сигналов по Ethernet-соединениям.
Уничтожение экземпляров выполняется через виртуальный деструктор ~IEEE1722DatagramCRF() noexcept[SWS_RDS_90304]. Благодаря объявлению в качестве virtual надлежащее освобождение всех ресурсов гарантируется даже тогда, когда объекты производных классов управляются и уничтожаются через указатель на базовый класс. Обозначение noexcept обеспечивает гарантированно безысключительное протекание процесса уничтожения.
Создание и инициализация экземпляров из-за отсутствия самостоятельного открытого конструктора в полезной нагрузке осуществляются, предположительно, через производные классы или специфичные для модуля фабричные механизмы. Вопрос (открытый) С точки зрения конкурентности экземпляры класса не являются самостоятельно потокобезопасными; так как атрибуты состоят из простых опциональных скалярных значений, конкурентный доступ на чтение и запись должен координироваться вышестоящими механизмами синхронизации приложения.
Путь использования
Типичный сценарий использования включает создание, конфигурацию и обработку датаграммы CRF в потоке данных с последующим её освобождением.
Сначала приложение инстанцирует конкретную реализацию класса датаграммы CRF. Затем заполняются параметры, релевантные для тактовой синхронизации. Так, например, могут быть заданы MAC-адрес mac_address[SWS_RDS_90299], частота дискретизации через fs[SWS_RDS_90302] или base_frequency[SWS_RDS_90295], а также интервал меток времени timestamp_interval[SWS_RDS_90303]. Поскольку все поля являются опциональными, ненужные или неполные записи заголовка могут быть оставлены в состоянии ara::core::nullopt. После конфигурации датаграмма передаётся в канал Raw Data Stream. Как только обработка завершена, экземпляр безопасно уничтожается через ~IEEE1722DatagramCRF()[SWS_RDS_90304].
Сценарии ошибок
Виртуальный деструктор ~IEEE1722DatagramCRF() объявлен как noexcept[SWS_RDS_90304], благодаря чему во время очистки исключения C++ не могут покинуть его пределы, что предотвращает аварийное завершение программы во время раскрутки стека.
При использовании полей данных основной риск заключается в ошибочном считывании незаданных значений. Перед доступом к таким значениям, как unique_id[SWS_RDS_90294], sequenceNum[SWS_RDS_90298] или tu[SWS_RDS_90296], приложение всегда должно проверять, действительно ли соответствующий ara::core::Optional содержит значение (например, с помощью has_value()). Прямой доступ к пустому Optional с разыменованием представляет собой нарушение предусловия и приводит к неопределённому поведению или ошибкам.
Данное руководство было сгенерировано ИИ на основе спецификации AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал