How tak-product-center/atak-civ works
ATAK-CIV is a mobile geospatial and situational-awareness application. Its broad user workflow is to view and work with map-based information, discover or import geospatial content, and communicate or share situational updates. The tree shows substantial map, content-service, model, CoT, chat, contact, attachment, and plugin capabilities. Source evidence is limited to selected excerpts and index references, so dashed links mark plausible but unverified runtime relationships; unsampled subsystems are represented only at their supported directory paths.
Main entry points: Cesium3DTilesServiceQuery.java Cesium discovery · FileStorageService.java Model file access · MapView.java Map view · ServiceQuery.java Service query
Components 16
Map and rendering
- Map view
atak/ATAK/app/src/main/java/com/atakmap/android/maps/MapView.java - GL rendering
takkernel/engine/src/main/java/com/atakmap/opengl/GLES20FixedPipeline.java
Geospatial content
- Service query
atak/ATAK/app/src/main/java/com/atakmap/android/contentservices/ServiceQuery.java - Cesium discovery
atak/ATAK/app/src/main/java/com/atakmap/android/model/Cesium3DTilesServiceQuery.java - Content service
atak/ATAK/app/src/main/java/com/atakmap/android/contentservices/Service.java - Model file access
atak/ATAK/app/src/main/java/com/atakmap/android/model/viewer/io/FileStorageService.java - File utilities
takkernel/engine/src/main/java/com/atakmap/coremap/filesystem/FileSystemUtils.java - I/O abstraction
takkernel/engine/src/main/java/com/atakmap/coremap/io/IOProviderFactory.java
Communications
- CoT exchange
atak/ATAK/app/src/main/java/com/atakmap/comms/CotService.java - Geo chat
atak/ATAK/app/src/main/java/com/atakmap/android/chat/GeoChatService.java - Contacts
atak/ATAK/app/src/main/java/com/atakmap/android/contact/Contacts.java - Attachments
atak/ATAK/app/src/main/java/com/atakmap/android/attachment - Server channels
atak/ATAK/app/src/main/java/com/atakmap/android/channels
Extension platform
- Plugin registry
atak/ATAK/app/src/main/java/com/atak/plugins/impl/AtakPluginRegistry.java - Certificate enrollment
commoncommo/core/impl/enrollmentmanager.cpp
Other components
- ATAK user
Connections 16
- ATAK user → Map view: views map
README.md - Map view → GL rendering: renders through
- Service query → Content service: lists services
atak/ATAK/app/src/main/java/com/atakmap/android/contentservices/ServiceQuery.java - Cesium discovery → Content service: creates services
atak/ATAK/app/src/main/java/com/atakmap/android/model/Cesium3DTilesServiceQuery.java - Cesium discovery → Service query: implements query
atak/ATAK/app/src/main/java/com/atakmap/android/model/Cesium3DTilesServiceQuery.java - Cesium discovery → Model file access: imports model data
- Model file access → File utilities: uses file utilities
atak/ATAK/app/src/main/java/com/atakmap/android/model/viewer/io/FileStorageService.java - Model file access → I/O abstraction: reads and writes
atak/ATAK/app/src/main/java/com/atakmap/android/model/viewer/io/FileStorageService.java - File utilities → I/O abstraction: delegates file I/O
takkernel/engine/src/main/java/com/atakmap/coremap/filesystem/FileSystemUtils.java - ATAK user → CoT exchange: shares updates
- CoT exchange → Geo chat: carries messages
- Geo chat → Contacts: addresses peers
- ATAK user → Attachments: shares files
- ATAK user → Server channels: selects channels
- ATAK user → Plugin registry: extends application
- ATAK user → Certificate enrollment: enrolls device