API Reference¶
Complete API documentation for all PILS classes and methods.
Modules Overview¶
graph TB
subgraph Core
A[Flight]
B[Synchronizer]
end
subgraph Loaders
C[PathLoader]
D[StoutLoader]
end
subgraph Sensors
E[GPS]
F[IMU]
G[Camera]
H[ADC]
I[Inclinometer]
end
subgraph Drones
J[DJIDrone]
K[BlackSquareDrone]
L[Litchi]
end
subgraph Analysis
M[PPKAnalyzer]
N[RTKAnalyzer]
end
C --> A
D --> A
A --> E & F & G & H & I
A --> J & K & L
A --> B
A --> M & N
Quick Links¶
-
Flight,Synchronizer- Main containers and time alignment -
PathLoader,StoutLoader- Load flights from filesystem or database -
GPS,IMU,Camera,ADC,Inclinometer- Sensor data access -
DJIDrone,BlackSquareDrone,Litchi- Platform support -
PPKAnalyzer,RTKAnalyzer- Positioning analysis -
Helper functions and decoders
Import Patterns¶
# Core
from pils.flight import Flight
from pils.synchronizer import Synchronizer
# Loaders
from pils.loader.path import PathLoader
from pils.loader.stout import StoutLoader
# Sensors (direct)
from pils.sensors import GPS, IMU, Camera, ADC, Inclinometer
# Drones (direct)
from pils.drones import DJIDrone, BlackSquareDrone, Litchi
# Analysis
from pils.analyze.ppk import PPKAnalyzer
from pils.analyze.rtkdata.RTKLIB import RTKAnalyzer
# Utilities
from pils.utils.tools import validate_path, ensure_directory
Type Conventions¶
PILS uses modern Python type hints:
# Union types (Python 3.10+)
path: str | Path
# Optional
sensors: Optional[List[str]] = None
# Return types
def load_data() -> pl.DataFrame
# Generic dicts
def get_metadata() -> Dict[str, Any]
Common Return Types¶
| Type | Description |
|---|---|
pl.DataFrame |
Polars DataFrame with sensor/drone data |
Dict[str, pl.DataFrame] |
Multiple named DataFrames |
Dict[str, Any] |
Metadata or configuration |
Path |
Pathlib Path object |
List[Dict] |
List of flight info dictionaries |