pub struct AirwayDatabase { /* private fields */ }Expand description
A compiled EUROCONTROL navigational database for querying routes and procedures.
This struct provides fast lookups of airports, navaids, designated points, routes, and instrument procedures (SIDs/STARs) loaded from AIXM data files. The database is typically loaded once and used to resolve route segments and procedure exit/entry points.
§Internals
Data is stored in HashMaps keyed by identifier for efficient lookup. Private fields ensure data consistency and enable future optimizations.
§Example
use std::path::Path;
use thrust::data::eurocontrol::database::AirwayDatabase;
let db = AirwayDatabase::new(Path::new("/path/to/eurocontrol/data"))?;
let exit_points = db.resolve_sid_points("RCKT2");Implementations§
Source§impl AirwayDatabase
impl AirwayDatabase
Sourcepub fn new(path: &Path) -> Result<Self, ThrustError>
pub fn new(path: &Path) -> Result<Self, ThrustError>
Load the airway database from the specified directory path.
Sourcepub fn resolve_sid_points(&self, name: &str) -> Vec<ResolvedPoint>
pub fn resolve_sid_points(&self, name: &str) -> Vec<ResolvedPoint>
Resolve SID connecting points by procedure designator.
Sourcepub fn resolve_star_points(&self, name: &str) -> Vec<ResolvedPoint>
pub fn resolve_star_points(&self, name: &str) -> Vec<ResolvedPoint>
Resolve STAR connecting points by procedure designator.
Sourcepub fn resolve_sid_routes(&self, name: &str) -> Vec<ResolvedRoute>
pub fn resolve_sid_routes(&self, name: &str) -> Vec<ResolvedRoute>
Resolve SID procedures by designator as route-like segments.
Sourcepub fn resolve_star_routes(&self, name: &str) -> Vec<ResolvedRoute>
pub fn resolve_star_routes(&self, name: &str) -> Vec<ResolvedRoute>
Resolve STAR procedures by designator as route-like segments.
Source§impl AirwayDatabase
impl AirwayDatabase
Sourcepub fn enrich_route(
&self,
elements: Vec<Field15Element>,
) -> Vec<ResolvedRouteSegment>
pub fn enrich_route( &self, elements: Vec<Field15Element>, ) -> Vec<ResolvedRouteSegment>
Enrich a sequence of Field15Elements into resolved route segments. A resolved route segment consists of start and end points, along with optional altitude and speed constraints. All points and airways are resolved against the database.