Skip to content

Commit

Permalink
rebase on main
Browse files Browse the repository at this point in the history
  • Loading branch information
mickmis committed Sep 19, 2023
1 parent 574c74e commit 77f3b84
Show file tree
Hide file tree
Showing 3 changed files with 84 additions and 198 deletions.
2 changes: 1 addition & 1 deletion interfaces/interuss/automated_testing
153 changes: 73 additions & 80 deletions src/uas_standards/interuss/automated_testing/rid/v1/injection.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,53 @@ class SpeedAccuracy(str, Enum):
SA03mps = "SA03mps"


class RIDHeightReference(str, Enum):
"""The reference datum above which the height is reported."""

TakeoffLocation = "TakeoffLocation"
GroundLevel = "GroundLevel"


class RIDHeight(ImplicitDict):
"""A relative altitude for the purposes of remote ID."""

distance: float
"""Distance above reference datum. This value is provided in meters and must have a minimum resolution of 1 meter."""

reference: RIDHeightReference
"""The reference datum above which the height is reported."""


Latitude = float
"""Degrees of latitude north of the equator, with reference to the WGS84 ellipsoid."""


Longitude = float
"""Degrees of longitude east of the Prime Meridian, with reference to the WGS84 ellipsoid."""


class LatLngPoint(ImplicitDict):
"""Point on the earth's surface."""

lng: Longitude

lat: Latitude


Altitude = float
"""An altitude, in meters, above the WGS84 ellipsoid."""


class RIDOperationalStatus(str, Enum):
"""Indicates operational status of associated aircraft."""

Undeclared = "Undeclared"
Ground = "Ground"
Airborne = "Airborne"
Emergency = "Emergency"
RemoteIDSystemFailure = "RemoteIDSystemFailure"


class RIDAircraftType(str, Enum):
"""Type of aircraft for the purposes of remote ID.
Expand Down Expand Up @@ -195,6 +242,24 @@ class UAClassificationEUClass(str, Enum):



class OperatorAltitudeAltitudeType(str, Enum):
"""Source of data for the altitude field."""

Takeoff = "Takeoff"
Dynamic = "Dynamic"
Fixed = "Fixed"


class OperatorAltitude(ImplicitDict):
"""Altitude associated with the Remote Pilot"""

altitude: Optional[float]
"""Provides the Operator Altitude based on WGS-84 height above ellipsoid (HAE) (See Geodetic Altitude). This value is provided in meters and must have a minimum resolution of 1 m."""

altitude_type: Optional[OperatorAltitudeAltitudeType]
"""Source of data for the altitude field."""


SpecificSessionID = str
"""A unique 20 byte ID intended to identify a specific flight (session) while providing a
greater level of privacy to the operator. The first byte is the registered unique Specific Session ID
Expand Down Expand Up @@ -226,90 +291,15 @@ class UASID(ImplicitDict):
specific_session_id: Optional[SpecificSessionID]


Latitude = float
"""Degrees of latitude north of the equator, with reference to the WGS84 ellipsoid."""


Longitude = float
"""Degrees of longitude east of the Prime Meridian, with reference to the WGS84 ellipsoid."""


Altitude = float
"""An altitude, in meters, above the WGS84 ellipsoid."""


OperatorId = str
"""CAA-issued registration/license ID for the remote pilot or operator. """


class LatLngPoint(ImplicitDict):
"""Point on the earth's surface."""

lng: Longitude

lat: Latitude


class OperatorAltitudeAltitudeType(str, Enum):
"""Source of data for the altitude field."""

Takeoff = "Takeoff"
Dynamic = "Dynamic"
Fixed = "Fixed"


class OperatorAltitude(ImplicitDict):
"""Altitude associated with the Remote Pilot"""

altitude: Optional[Altitude]

altitude_type: Optional[OperatorAltitudeAltitudeType]
"""Source of data for the altitude field."""


class RIDOperationalStatus(str, Enum):
"""Indicates operational status of associated aircraft."""

Undeclared = "Undeclared"
Ground = "Ground"
Airborne = "Airborne"
Emergency = "Emergency"
RemoteIDSystemFailure = "RemoteIDSystemFailure"


RIDTrack = float
"""Direction of flight expressed as a "True North-based" ground track angle. This value is provided in degrees East of North with a minimum resolution of 1 degree."""


RIDSpeed = float
"""Ground speed of flight in meters per second."""


class RIDHeightReference(str, Enum):
"""The reference datum above which the height is reported."""

TakeoffLocation = "TakeoffLocation"
GroundLevel = "GroundLevel"


class RIDHeight(ImplicitDict):
"""A relative altitude for the purposes of remote ID."""

distance: float
"""Distance above reference datum. This value is provided in meters and must have a minimum resolution of 1 meter."""

reference: RIDHeightReference
"""The reference datum above which the height is reported."""


class RIDAircraftPosition(ImplicitDict):
"""Position of an aircraft as reported for remote ID purposes."""

lat: Latitude

lng: Longitude

alt: Altitude
alt: float
"""Geodetic altitude (NOT altitude above launch, altitude above ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured along a line that passes through the aircraft and is normal to the surface of the WGS84 ellipsoid. This value is provided in meters and must have a minimum resolution of 1 meter."""

accuracy_h: Optional[HorizontalAccuracy]
"""Horizontal error that is likely to be present in this reported position. Required when `extrapolated` field is true and always in the entry for the current state."""
Expand All @@ -330,7 +320,8 @@ class RIDFlightDetails(ImplicitDict):
id: str
"""ID for this flight, matching argument in request."""

operator_id: Optional[OperatorId]
operator_id: Optional[str]
"""CAA-issued registration/license ID for the remote pilot or operator. """

operator_location: Optional[LatLngPoint]
"""Location of party controlling the aircraft."""
Expand Down Expand Up @@ -374,9 +365,11 @@ class RIDAircraftState(ImplicitDict):

position: RIDAircraftPosition

track: RIDTrack
track: float
"""Direction of flight expressed as a "True North-based" ground track angle. This value is provided in degrees East of North with a minimum resolution of 1 degree."""

speed: RIDSpeed
speed: float
"""Ground speed of flight in meters per second."""

speed_accuracy: SpeedAccuracy
"""Accuracy of horizontal ground speed."""
Expand Down
127 changes: 10 additions & 117 deletions src/uas_standards/interuss/automated_testing/rid/v1/observation.py
Original file line number Diff line number Diff line change
@@ -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.0.1 OpenAPI"""

# This file is autogenerated; do not modify manually!

Expand All @@ -12,94 +12,25 @@
from implicitdict import ImplicitDict


API_VERSION = "0.0.2"
API_VERSION = "0.0.1"
"""Version of Remote ID Display Data Observation OpenAPI specification from which the objects in this package were generated."""

class UAS(ImplicitDict):
"""UAS information"""

id: Optional[str]
"""Observed arbitrary and format agnostic (string) identification of a UAS."""


class RIDOperationalStatus(str, Enum):
"""Indicates operational status of associated aircraft."""

Undeclared = "Undeclared"
Ground = "Ground"
Airborne = "Airborne"
Emergency = "Emergency"
RemoteIDSystemFailure = "RemoteIDSystemFailure"


RIDTrack = float
"""Direction of flight expressed as a "True North-based" ground track angle. This value is provided in degrees East of North with a minimum resolution of 1 degree."""


RIDSpeed = float
"""Ground speed of flight in meters per second."""


Longitude = float
"""Degrees of longitude east of the Prime Meridian, with reference to the WGS84 ellipsoid."""


Latitude = float
"""Degrees of latitude north of the equator, with reference to the WGS84 ellipsoid."""


class OperatorAltitudeAltitudeType(str, Enum):
"""Source of data for the altitude field."""

Takeoff = "Takeoff"
Dynamic = "Dynamic"
Fixed = "Fixed"


Altitude = float
"""An altitude, in meters, above the WGS84 ellipsoid."""


class RIDHeightReference(str, Enum):
"""The reference datum above which the height is reported."""

TakeoffLocation = "TakeoffLocation"
GroundLevel = "GroundLevel"


class RIDHeight(ImplicitDict):
"""A relative altitude for the purposes of remote ID."""

distance: float
"""Distance above reference datum. This value is provided in meters and must have a minimum resolution of 1 meter."""

reference: RIDHeightReference
"""The reference datum above which the height is reported."""


class CurrentState(ImplicitDict):
"""Current state of an aircraft."""

timestamp: Optional[str]
"""Time at which the message containing the current state information was generated by the display provider."""

operational_status: Optional[RIDOperationalStatus]

track: Optional[RIDTrack]
class GetDetailsResponse(ImplicitDict):
"""Response to a request to get details about a flight."""

speed: Optional[RIDSpeed]


class Position(ImplicitDict):
"""A position on Earth."""

lat: Latitude

lng: Longitude
lat: float
"""Degrees of latitude north of the equator, with reference to the WGS84 ellipsoid."""

alt: Optional[Altitude]
lng: float
"""Degrees of longitude east of the Prime Meridian, with reference to the WGS84 ellipsoid."""

height: Optional[RIDHeight]
alt: Optional[float]
"""Geodetic altitude (NOT altitude above launch, altitude above ground, or EGM96): aircraft distance above the WGS84 ellipsoid as measured along a line that passes through the aircraft and is normal to the surface of the WGS84 ellipsoid."""


class Path(ImplicitDict):
Expand All @@ -109,47 +40,17 @@ 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"""

altitude: Optional[Altitude]

altitude_type: Optional[OperatorAltitudeAltitudeType]
"""Source of data for the altitude field."""


class Flight(ImplicitDict):
id: str
"""Identifier of flight that may be used to obtain details about the flight. This is not necessarily the UTM/flight ID in the remote ID system."""

current_state: Optional[CurrentState]

most_recent_position: Optional[Position]
"""Most recent position known for the flight."""

recent_paths: Optional[List[Path]]
"""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."""

Expand All @@ -173,14 +74,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"
Expand Down

0 comments on commit 77f3b84

Please sign in to comment.