How gameshowlda/askmkim works
AskMkiM is a Windows control-programming and equipment-test application. Its principal workflow is opening a control program, editing and analyzing it, translating it for execution, running it against connected instruments, then presenting and retaining protocol results. Separate product branches support metrology and equipment self-tests, device configuration, and application settings. The README documents these capabilities; the sampled source confirms selected parser, device, database, and protocol internals. Several UI and metrology implementation details were not sampled, so those links reflect documented workflows rather than inspected calls.
Main entry points: CommandExecutionManager.cs Command execution · CommandTranslationManager.cs Command translation · ProtocolStorageService.cs Execution protocol · TextSearchManager.cs Text editor
Components 18
Program authoring
- Text editor
UI/Components/MultiEditorMethods/TextSearchManager.cs
Analysis and execution
- Command translation
Ask.Engine/ControlCommandAnalyser/CommandTranslationManager.cs - Parameter parsing
Ask.Engine/ControlCommandAnalyser/Parser/Common/Pipeline/PrParameterPipeline.cs - Command execution
Ask.Engine/ControlCommandExecutor/Execution/CommandExecutionManager.cs - Device coordination
Ask.Engine/ControlCommandExecutor/BaseStrategies/DeviceManager.cs
Equipment and metrology
- Device runtime
Ask.Device.Runtime/Function/DeviceBusCommutation/ConnectorManager.cs - Connected instruments
Ask.Device.Communication/Com/Interop/ComPortDeviceManager.cs - Metrology modes
Ask.Core/Services/Metrology/MetrologyControlFactory.cs - Equipment checks
Ask.Device.Runtime/Function/DeviceBusCommutation/SelfCheck/SelfTestProcessManager.cs
Results and history
- Execution protocol
Ask.UI/Features/ProtocolNew/Protocol/ProtocolStorageService.cs - Protocol history
Ask.Core/Services/Protocols/ExecutionProtocolHistoryService.cs - PDF reports
Ask.Core/Services/FilesUtility/PrintUtility.cs
Configuration
- Device configuration
Ask.DataBase.Engine/Services/DeviceEngine.cs - Device database
Ask.DataBase.Provider/Services/Devices/LegacyMkiHardwareProfileStorageSql.cs - Application settings
Ask.Core/Services/Config/AppSettings/ExecutionConfig.cs
Other components
- Operator
- Control programs
- Physical equipment
Connections 21
- Operator → Control programs: opens
- Control programs → Text editor: loads into
- Operator → Text editor: edits
- Text editor → Command translation: submits text
- Command translation → Parameter parsing: parses parameters
- Command translation → Command execution: translates for
- Operator → Command execution: starts or steps
- Command execution → Device coordination: coordinates devices
Ask.Engine/ControlCommandExecutor/BaseStrategies/DeviceManager.cs - Device coordination → Device runtime: controls devices
Ask.Engine/ControlCommandExecutor/BaseStrategies/DeviceManager.cs - Device runtime → Connected instruments: communicates via
- Connected instruments → Physical equipment: sends commands
- Operator → Metrology modes: starts mode
- Metrology modes → Physical equipment: checks measurement paths
- Operator → Equipment checks: runs checks
- Equipment checks → Physical equipment: tests hardware
- Command execution → Execution protocol: records execution
- Execution protocol → Protocol history: retains history
Ask.UI/Features/ProtocolNew/Protocol/ProtocolStorageService.cs - Execution protocol → PDF reports: exports PDF
- Operator → Device configuration: configures devices
- Device configuration → Device database: persists device data
- Operator → Application settings: changes settings