docs: добавь поясняющие комментарии к модулям и инструментам

This commit is contained in:
2026-10-02 16:45:50 +03:00
parent 6cbce6c360
commit 427fc70100
488 changed files with 2877 additions and 1 deletions

View File

@@ -1,3 +1,7 @@
# Сборка и упаковка модифицированного DSView на существующем MSYS2 UCRT64. Хеш рецепта
# помогает определить актуальность runtime; декодеры включаются в пакет вместе с поддержкой
# host protocol 1.
"""Build and package DSView host protocol 1 using an existing MSYS2 UCRT64 SDK."""
import argparse
import hashlib

View File

@@ -1,3 +1,7 @@
# Точка обнаружения декодера gate_driver_timing в DSView/libsigrokdecode. Экспорт класса
# Decoder из pd.py позволяет загрузчику зарегистрировать плагин; сам разбор потока выполняется
# в модуле декодера.
"""DSView protocol decoder for SCALE gate-driver timing checks."""
from .pd import Decoder

View File

@@ -1,3 +1,9 @@
# Проверка временных характеристик драйвера затвора по цифровым фронтам. Параметры профилей
# задаются в наносекундах; типичная задержка ACK используется для предупреждения, а
# нормированная длительность импульса — для PASS/FAIL. Этот адаптер переводит события
# libsigrokdecode в аннотации DSView; координаты выборок пересчитываются с учётом частоты
# захвата.
"""DSView/libsigrokdecode front end for SCALE gate-driver timing checks."""
import sigrokdecode as srd

View File

@@ -1 +1,5 @@
# Точка обнаружения декодера pm35_uart в DSView/libsigrokdecode. Экспорт класса Decoder из
# pd.py позволяет загрузчику зарегистрировать плагин; сам разбор потока выполняется в модуле
# декодера.
from .pd import Decoder

View File

@@ -1,3 +1,8 @@
# Декодирование UART-обмена ПМ35 с командами Modbus 03/06. Учитывается исторический ответ на
# 128 слов с нулевым полем числа байтов; универсальный Modbus-parser без этого правила
# потеряет границу сообщения. Этот адаптер переводит события libsigrokdecode в аннотации
# DSView; координаты выборок пересчитываются с учётом частоты захвата.
import sigrokdecode as srd
from common.setgui_decoders.pm35_uart import PM35Parser

View File

@@ -1 +1,5 @@
# Точка обнаружения декодера set_can в DSView/libsigrokdecode. Экспорт класса Decoder из pd.py
# позволяет загрузчику зарегистрировать плагин; сам разбор потока выполняется в модуле
# декодера.
from .pd import Decoder

View File

@@ -1,3 +1,8 @@
# Сегментация SET v2 и интерпретация CAN-данных зависят от выбранного слоя. Адрес и номер
# сегмента должны проверяться до объединения данных; classic CAN-пакет ограничен восемью
# байтами. Этот адаптер переводит события libsigrokdecode в аннотации DSView; координаты
# выборок пересчитываются с учётом частоты захвата.
import sigrokdecode as srd
from common.setgui_decoders.set_can import Reassembler, legacy

View File

@@ -1 +1,5 @@
# Точка обнаружения декодера set_uart в DSView/libsigrokdecode. Экспорт класса Decoder из
# pd.py позволяет загрузчику зарегистрировать плагин; сам разбор потока выполняется в модуле
# декодера.
from .pd import Decoder

View File

@@ -1,3 +1,8 @@
# Декодирование потоков UART протоколов SET по накопленным байтам. Поиск сигнатуры и проверка
# сообщения должны переживать границу входного фрагмента; неверная контрольная сумма не
# выдаётся как успешный пакет. Этот адаптер переводит события libsigrokdecode в аннотации
# DSView; координаты выборок пересчитываются с учётом частоты захвата.
import sigrokdecode as srd
from common.setgui_decoders.set_uart import StreamParser

View File

@@ -1 +1,5 @@
# Точка обнаружения декодера transistor_pair в DSView/libsigrokdecode. Экспорт класса Decoder
# из pd.py позволяет загрузчику зарегистрировать плагин; сам разбор потока выполняется в
# модуле декодера.
from .pd import Decoder

View File

@@ -1,3 +1,8 @@
# Анализ двух комплементарных входов транзисторной пары. Совместное включение, паузы и
# интервалы определяются только по этим входам; ACK/Vstat драйвера не участвуют в данной
# модели. Этот адаптер переводит события libsigrokdecode в аннотации DSView; координаты
# выборок пересчитываются с учётом частоты захвата.
"""Two-input transistor pair analyzer, independent of driver feedback."""
import sigrokdecode as srd
from common.setgui_decoders.transistor_pair import PairTimingChecker

View File

@@ -1,3 +1,7 @@
# Установка декодеров в найденный каталог DSView и проверка размещения. Режим CheckOnly
# проверяет состояние установки; фактическое копирование зависит от выбранного режима и
# доступности каталогов назначения.
[CmdletBinding()]
param(
[string]$DsViewPath = (Join-Path $env:ProgramFiles 'DSView'),

View File

@@ -1,3 +1,9 @@
/*
* Сводные измерения цифровых каналов для нативного DSView. Обработка фронтов и длительностей
* выполняется без зависимости от Python-декодера; результат предназначен для представления
* итогов захвата.
*/
#pragma once
#include <atomic>
#include <cstdint>

View File

@@ -1,3 +1,9 @@
/*
* Проверки gate_summary_test: фиксируют ожидаемое поведение на воспроизводимых входных данных.
* Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
* настройками рабочего устройства.
*/
#include "gate_summary.h"
#include <cassert>
int main() {

View File

@@ -1,3 +1,17 @@
# Проверки decoders: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_reference_crc
# test_documented_ping
# test_documented_bridge
# test_v1_big_endian_header
# test_noise_crc_and_resync
# test_bad_version_and_length
# test_max_payload
# test_unknown_message_preserved
# Остальные сценарии продолжают эти проверки ниже в том же файле.
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
"""Wire vectors and DSView API boundary tests; no sigrok installation needed."""
import binascii
import importlib

View File

@@ -1,3 +1,9 @@
# Проверки gate_summary: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_verdict_priority_completion_and_reset
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
import os
from pathlib import Path
import shutil

View File

@@ -1,3 +1,17 @@
# Проверки gate_timing: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_1sp0635_nominal_ack_at_100_mhz
# test_1sd536f2_nominal_ack_at_100_mhz_active_low
# test_late_delay_is_warning_but_valid_width_passes
# test_too_short_ack_fails
# test_long_status_is_fault
# test_missing_ack_expires
# test_both_directions_and_independent_minimums
# test_atomic_handover_and_active_low
# Остальные сценарии продолжают эти проверки ниже в том же файле.
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
import importlib.util
from pathlib import Path
import unittest

View File

@@ -1,3 +1,13 @@
# Проверки install_decoders: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_install_import_and_update_backup
# test_check_only_does_not_install
# test_copy_failure_restores_previous_decoders
# test_incomplete_target_is_untouched
# test_missing_source_is_detected_before_changes
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
"""Exercise the standalone PowerShell installer without modifying installed DSView."""
import os
from pathlib import Path

View File

@@ -1,3 +1,10 @@
# Проверки runtime: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_legacy_runtime_and_mismatched_binary_or_recipe_require_rebuild
# test_patch_adapters_and_shared_cores_all_invalidate_runtime
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
"""Prevent packaging a new GUI with a stale native DSView component."""
import hashlib
import importlib.util

View File

@@ -1,3 +1,13 @@
# Проверки transistor_pair: фиксируют ожидаемое поведение на воспроизводимых входных данных.
# Сценарии для навигации по файлу:
# test_directional_deadtime_limits_and_equality
# test_independent_on_off_times_frequency_and_duty
# test_atomic_handover_active_low_and_overlap
# test_capture_boundary_does_not_invent_complete_pulses
# test_invalid_limits
# Тестовые значения и подмены окружения относятся к проверке контракта; они не являются
# настройками рабочего устройства.
import sys
from pathlib import Path
import unittest