π UML Flowchart Diagram with Explanation: EGNSS4CAP iOS App Workflow#
This flowchart captures the overall functional workflow of the EGNSS4CAP iOS application and provides an explanation for each step.
π§© Mermaid Flowchart Diagram#
flowchart TD
A[App Launch] --> B[MainViewController Loads]
B --> C{User Action?}
C -->|Start GNSS| D[GNSSReceiver Starts Tracking]
C -->|Open Map| E[MapViewController Displays Map]
C -->|Capture Photo| F[CameraViewController Opens Camera]
C -->|Settings| G[SettingsViewController Opens Settings]
D --> H[Get GNSS Fix]
H --> I[Attach Fix to Metadata]
I --> J[Pass Data to CameraViewController]
F --> J
J --> K[Capture Photo with Metadata]
K --> L[Save Image to Local Storage]
E --> M[Display User Location]
M --> N[Display Satellites]
G --> O[Load/Save Preferences]
L --> P{Generate Report?}
P -->|Yes| Q[PDFCreator Generates Report]
Q --> R[Export PDF]
π Explanation#
πΉ App Launch & Main Controller#
- The app begins by loading the
MainViewController
, which acts as a central point for user interaction.
πΉ User Action Options#
- Start GNSS: Triggers the GNSS receiver to begin capturing location data.
- Open Map: Loads the map view for user interaction and satellite visualization.
- Capture Photo: Opens the camera interface for taking geotagged photos.
- Settings: Opens app preferences through the
SettingsViewController
.
πΉ GNSS Workflow#
- The
GNSSReceiver
obtains GNSS data and provides a fix. - The fix is processed, attached as metadata, and passed to the camera for inclusion in photos.
πΉ Camera Integration#
- The photo is captured with GNSS metadata embedded.
- The image is then saved locally on the device.
πΉ Map Interaction#
- The map shows the user's location and optionally displays satellite data.
πΉ Preferences#
- Users can load or modify their preferences within the settings interface.
πΉ Report Generation#
- After capturing and saving data, users can choose to generate a report using
PDFCreator
. - The report is then exported as a PDF document.
β Key Benefits#
- Ensures trusted geolocation with GNSS integration.
- Streamlined workflow from data collection to reporting.
- Supports multiple modules while maintaining centralized user control.