94 lines
2.4 KiB
Plaintext
94 lines
2.4 KiB
Plaintext
graph TB
|
|
subgraph Application Layer
|
|
MW[MainWindow]
|
|
AC[ApplicationController]
|
|
end
|
|
|
|
subgraph Server Layer
|
|
DS[DataServer]
|
|
subgraph Server Signals
|
|
DS_DATA[Data Signal]
|
|
DS_STATE[State Signal]
|
|
DS_ERROR[Error Signal]
|
|
end
|
|
end
|
|
|
|
subgraph Component Controllers
|
|
FC[FilterController]
|
|
SC[SpectrumController]
|
|
WC[WaveformController]
|
|
end
|
|
|
|
subgraph Views
|
|
FV[FilterWidget]
|
|
SV[SpectrumWidget]
|
|
WV[WaveformWidget]
|
|
end
|
|
|
|
subgraph Models
|
|
FM[FilterModel]
|
|
SM[SpectrumModel]
|
|
WM[WaveformModel]
|
|
end
|
|
|
|
%% 应用层连接
|
|
MW -->|creates| AC
|
|
AC -->|manages| FC
|
|
AC -->|manages| SC
|
|
AC -->|manages| WC
|
|
|
|
%% Server信号连接
|
|
DS_DATA -->|new_data_received| FC
|
|
DS_DATA -->|new_data_received| SC
|
|
DS_DATA -->|new_data_received| WC
|
|
DS_STATE -->|channel_state_changed| AC
|
|
DS_ERROR -->|error_occurred| AC
|
|
|
|
%% Server控制
|
|
AC -->|start_channel| DS
|
|
AC -->|stop_channel| DS
|
|
AC -->|configure| DS
|
|
|
|
%% 控制器与视图和模型的连接
|
|
FC -->|creates/updates| FV
|
|
FC -->|manages| FM
|
|
SC -->|creates/updates| SV
|
|
SC -->|manages| SM
|
|
WC -->|creates/updates| WV
|
|
WC -->|manages| WM
|
|
|
|
%% 组件间数据流
|
|
FC -->|processed_data_ready| SC
|
|
FC -->|processed_data_ready| WC
|
|
|
|
%% 视图信号
|
|
FV -.->|filter_changed| FC
|
|
FV -.->|filter_enabled_changed| FC
|
|
SV -.->|display_changed| SC
|
|
WV -.->|display_changed| WC
|
|
|
|
%% 控制器信号
|
|
FC -.->|filter_state_changed| AC
|
|
FC -.->|params_updated| AC
|
|
SC -.->|spectrum_updated| AC
|
|
WC -.->|waveform_updated| AC
|
|
|
|
%% 错误处理
|
|
FC -.->|error_occurred| AC
|
|
SC -.->|error_occurred| AC
|
|
WC -.->|error_occurred| AC
|
|
AC -.->|error_occurred| MW
|
|
|
|
classDef controller fill:#f9f,stroke:#333,stroke-width:2px;
|
|
classDef view fill:#bbf,stroke:#333,stroke-width:2px;
|
|
classDef model fill:#bfb,stroke:#333,stroke-width:2px;
|
|
classDef server fill:#fbb,stroke:#333,stroke-width:2px;
|
|
classDef signal fill:#ffb,stroke:#333,stroke-width:1px;
|
|
classDef app fill:#fff,stroke:#333,stroke-width:4px;
|
|
|
|
class AC,FC,SC,WC controller;
|
|
class FV,SV,WV view;
|
|
class FM,SM,WM model;
|
|
class DS server;
|
|
class DS_DATA,DS_STATE,DS_ERROR signal;
|
|
class MW app; |