diff --git a/interfaces/interuss/automated_testing b/interfaces/interuss/automated_testing index 7edfa5e..8a5f1db 160000 --- a/interfaces/interuss/automated_testing +++ b/interfaces/interuss/automated_testing @@ -1 +1 @@ -Subproject commit 7edfa5ee3540875ee5b2fc0487938c9610d94924 +Subproject commit 8a5f1db0f59b8fcce1c6095bcec17e994df0fb75 diff --git a/src/uas_standards/interuss/automated_testing/flight_planning/v1/api.py b/src/uas_standards/interuss/automated_testing/flight_planning/v1/api.py index 3b37ce7..cd65c4e 100644 --- a/src/uas_standards/interuss/automated_testing/flight_planning/v1/api.py +++ b/src/uas_standards/interuss/automated_testing/flight_planning/v1/api.py @@ -1,4 +1,4 @@ -"""Data types and operations from Flight Planning Automated Testing Interface 0.3.0 OpenAPI""" +"""Data types and operations from Flight Planning Automated Testing Interface 0.4.0 OpenAPI""" # This file is autogenerated; do not modify manually! @@ -12,7 +12,7 @@ from implicitdict import ImplicitDict, StringBasedDateTime -API_VERSION = "0.3.0" +API_VERSION = "0.4.0" """Version of Flight Planning Automated Testing Interface OpenAPI specification from which the objects in this package were generated.""" FlightPlanID = str @@ -40,7 +40,7 @@ class StatusResponse(ImplicitDict): """Indication of the API implemented at this URL. Must be "Flight Planning Automated Testing Interface".""" api_version: Optional[str] - """Indication of the API version implemented at this URL. Must be "v0.3.0" when implementing this version of the API.""" + """Indication of the API version implemented at this URL. Must be "v0.4.0" when implementing this version of the API.""" class FlightPlanAdditionalInformation(ImplicitDict): @@ -54,10 +54,12 @@ class BasicFlightPlanInformationUsageState(str, Enum): area with an active UAS. `InUse`: The user is currently using the defined area with an active UAS. + `Closed`: The user is no longer using, or planning to use, the flight plan. """ Planned = "Planned" InUse = "InUse" + Closed = "Closed" class BasicFlightPlanInformationUasState(str, Enum): @@ -71,11 +73,15 @@ class BasicFlightPlanInformationUasState(str, Enum): - `Contingent`: The user or UAS reports or implies that it is not performing nominally and may be unable to recover to normal operation. + + - `NotSpecified`: The UAS status is not currently available or known (for instance, if the flight is + planned in the future and the UAS that will be flying has not yet connected to the system). """ Nominal = "Nominal" OffNominal = "OffNominal" Contingent = "Contingent" + NotSpecified = "NotSpecified" class ExecutionStyle(str, Enum): @@ -462,6 +468,7 @@ class BasicFlightPlanInformation(ImplicitDict): area with an active UAS. `InUse`: The user is currently using the defined area with an active UAS. + `Closed`: The user is no longer using, or planning to use, the flight plan. """ uas_state: BasicFlightPlanInformationUasState @@ -475,10 +482,15 @@ class BasicFlightPlanInformation(ImplicitDict): - `Contingent`: The user or UAS reports or implies that it is not performing nominally and may be unable to recover to normal operation. + + - `NotSpecified`: The UAS status is not currently available or known (for instance, if the flight is + planned in the future and the UAS that will be flying has not yet connected to the system). """ area: Optional[List[Volume4D]] = [] - """The complete area in which the user intends to fly, or may fly, as known by the user. The user intends to fly, or may fly, anywhere in this entire area.""" + """The complete area in which the user intends to fly, or may fly, as known by the user. The user intends to fly, or may fly, anywhere in this entire area. + This means, for instance, that an ASTM F3548-21 operational intent supporting this flight must have volumes that are a superset of this area. If the operational intent did not cover this entire area, then all of the intended flight would not be covered by the operational intent (for at least part of the flight, the operator intends to fly outside the operational intent). + """ class ClearAreaRequest(ImplicitDict): diff --git a/src/uas_standards/interuss/automated_testing/rid/v1/observation.py b/src/uas_standards/interuss/automated_testing/rid/v1/observation.py index 754d6e1..99fb2b8 100644 --- a/src/uas_standards/interuss/automated_testing/rid/v1/observation.py +++ b/src/uas_standards/interuss/automated_testing/rid/v1/observation.py @@ -1,4 +1,4 @@ -"""Data types and operations from Remote ID Display Data Observation 0.0.2 OpenAPI""" +"""Data types and operations from Remote ID Display Data Observation 0.1.0 OpenAPI""" # This file is autogenerated; do not modify manually! @@ -12,7 +12,7 @@ from implicitdict import ImplicitDict -API_VERSION = "0.0.2" +API_VERSION = "0.1.0" """Version of Remote ID Display Data Observation OpenAPI specification from which the objects in this package were generated.""" class UAS(ImplicitDict): @@ -60,6 +60,13 @@ class OperatorAltitudeAltitudeType(str, Enum): """An altitude, in meters, above the WGS84 ellipsoid.""" +class AltitudeReference(str, Enum): + W84 = "W84" + EGM96 = "EGM96" + EGM2008 = "EGM2008" + Other = "Other" + + class RIDHeightReference(str, Enum): """The reference datum above which the height is reported.""" @@ -90,6 +97,41 @@ class CurrentState(ImplicitDict): speed: Optional[RIDSpeed] +class LatLngPoint(ImplicitDict): + """Point on the earth's surface.""" + + lng: Longitude + + lat: Latitude + + +class OperatorAltitude(ImplicitDict): + """Altitude associated with the Remote Pilot""" + + altitude: Optional[Altitude] + + altitude_type: Optional[OperatorAltitudeAltitudeType] + """Source of data for the altitude field.""" + + +class MSLAltitude(ImplicitDict): + meters: Optional[float] = 0 + """Height, in meters, above a mean sea level datum.""" + + reference_datum: Optional[AltitudeReference] + + +class Operator(ImplicitDict): + """Operator's information""" + + id: Optional[str] + """CAA-issued registration/license ID for the remote pilot or operator.""" + + location: Optional[LatLngPoint] + + altitude: Optional[OperatorAltitude] + + class Position(ImplicitDict): """A position on Earth.""" @@ -99,6 +141,8 @@ class Position(ImplicitDict): alt: Optional[Altitude] + msl_alt: Optional[MSLAltitude] + height: Optional[RIDHeight] @@ -109,21 +153,12 @@ class Path(ImplicitDict): """Sequential positions available for a flight.""" -class LatLngPoint(ImplicitDict): - """Point on the earth's surface.""" - - lng: Longitude - - lat: Latitude - - -class OperatorAltitude(ImplicitDict): - """Altitude associated with the Remote Pilot""" +class GetDetailsResponse(ImplicitDict): + """Response to a request to get details about a flight.""" - altitude: Optional[Altitude] + operator: Optional[Operator] - altitude_type: Optional[OperatorAltitudeAltitudeType] - """Source of data for the altitude field.""" + uas: Optional[UAS] class Flight(ImplicitDict): @@ -139,17 +174,6 @@ class Flight(ImplicitDict): """Paths the flight recently traveled, if available.""" -class Operator(ImplicitDict): - """Operator's information""" - - id: Optional[str] - """CAA-issued registration/license ID for the remote pilot or operator.""" - - location: Optional[LatLngPoint] - - altitude: Optional[OperatorAltitude] - - class Cluster(ImplicitDict): """A general area containing one or more flight.""" @@ -173,14 +197,6 @@ class GetDisplayDataResponse(ImplicitDict): """Current information for sets of discovered flights whose precise locations are not known.""" -class GetDetailsResponse(ImplicitDict): - """Response to a request to get details about a flight.""" - - operator: Optional[Operator] - - uas: Optional[UAS] - - class OperationID(str, Enum): GetDisplayData = "getDisplayData" GetDetails = "getDetails"