How danielhrisca/asammdf works
asammdf is a Python library and GUI for parsing, editing, analyzing, and exporting ASAM MDF measurement files. The principal workflow loads a measurement through the MDF API, decodes version-specific blocks into channels and Signals, performs selection or time-domain operations, then saves or exports results. Separate branches cover bus-log signal extraction and interactive visualization. README capabilities establish several domain links; sampled source and the SOURCE INDEX support the internal delegation shown. Unsampled modules are represented by their exact paths, with no speculative call edges.
Main entry points: mdf.py MDF API · main.py Main window · signal.py Signal operations · mdf_v3.py MDF v2/v3
Components 23
MDF Measurement
- MDF API
src/asammdf/mdf.py
Format Decoding
- MDF v2/v3
src/asammdf/blocks/mdf_v3.py - MDF v4
src/asammdf/blocks/mdf_v4.py - v2/v3 blocks
src/asammdf/blocks/v2_v3_blocks.py - v2/v3 constants
src/asammdf/blocks/v2_v3_constants.py - v4 blocks
src/asammdf/blocks/v4_blocks.py - v4 constants
src/asammdf/blocks/v4_constants.py - Conversions
src/asammdf/blocks/conversion_utils.py - Source metadata
src/asammdf/blocks/source_utils.py - Runtime options
src/asammdf/blocks/options.py
Signal Analysis
- Signal operations
src/asammdf/signal.py - Format utilities
src/asammdf/tool.py - Bus log signals
src/asammdf/blocks/bus_logging_utils.py - Export and serialize
src/asammdf/gui/serde.py
GUI Exploration
- GUI launcher
src/asammdf/app/asammdfgui.py - Main window
src/asammdf/gui/widgets/main.py - Measurement view
src/asammdf/gui/widgets/file.py - Measurement windows
src/asammdf/gui/widgets/mdi_area.py - Plot widget
src/asammdf/gui/widgets/plot.py - Channel lists
src/asammdf/gui/widgets/list.py - GUI messages
src/asammdf/gui/dialogs/messagebox.py - GUI resources
src/asammdf/gui/ui/resource_rc.py
Other components
- Measurement user
Connections 24
- Measurement user → MDF API: loads and edits
- MDF API → MDF v2/v3: dispatches
src/asammdf/mdf.py - MDF API → MDF v4: dispatches
src/asammdf/mdf.py - MDF v2/v3 → v2/v3 blocks: uses blocks
src/asammdf/blocks/mdf_v3.py - MDF v2/v3 → v2/v3 constants: uses constants
src/asammdf/blocks/mdf_v3.py - MDF v4 → v4 blocks: uses blocks
- v4 blocks → v4 constants: uses constants
src/asammdf/blocks/v4_blocks.py - MDF API → Signal operations: returns signals
src/asammdf/mdf.py - Signal operations → Conversions: uses conversions
src/asammdf/signal.py - MDF API → Runtime options: configures
src/asammdf/mdf.py - MDF API → Source metadata: uses metadata
src/asammdf/mdf.py - Measurement user → Signal operations: operates on time
- MDF API → Bus log signals: extracts bus signals
- Measurement user → Export and serialize: exports measurements
- MDF API → Format utilities: uses utilities
src/asammdf/mdf.py - GUI launcher → Main window: launches
src/asammdf/app/asammdfgui.py - Main window → Measurement view: opens files
src/asammdf/gui/widgets/main.py - Main window → Measurement windows: manages windows
src/asammdf/gui/widgets/main.py - Main window → Plot widget: opens plots
src/asammdf/gui/widgets/main.py - Measurement windows → Plot widget: hosts plots
src/asammdf/gui/widgets/mdi_area.py - Measurement windows → Signal operations: uses signals
src/asammdf/gui/widgets/mdi_area.py - Main window → GUI messages: shows messages
src/asammdf/gui/widgets/main.py - Channel lists → Export and serialize: serializes lists
src/asammdf/gui/widgets/list.py - Main window → GUI resources: loads resources
src/asammdf/gui/widgets/main.py