AirScout/AirScout.PlaneFeeds.Plugin/PlaneFeedPluginPlaneInfo.cs

83 wiersze
3.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AirScout.PlaneFeeds.Plugin
{
// Contains a set of raw aircraft information reported from the plugin
// Information is
// At least MANDATORY fields are:
// Timestamp: as the time the information was generated
// Hex: as a unique aircraft identifier
// all other fields are optional
// Essential for a valid position message are Lat, Lon, Alt Speed, Track
// but they might be recovered/estimated by previous messages later on by the software
public class PlaneFeedPluginPlaneInfo
{
// Timestamp of information
public DateTime Time { get; set; } = DateTime.MinValue;
// 6digit - HEX-Identifier of aircraft.
public string Hex { get; set; } = "";
// Call sign.
public string Call { get; set; } = "";
// Registration.
public string Reg { get; set; } = "";
// Latitude [-90..+90 deg].
public double Lat { get; set; } = double.MinValue;
// Longitude [-180 ..+180 deg].
public double Lon { get; set; } = double.MinValue;
// Altitude [0..100000 ft asl].
public double Alt { get; set; } = double.MinValue;
// Track (Heading) [0..360 deg].
public double Track { get; set; } = double.MinValue;
// Speed [0..800 kts].
public double Speed { get; set; } = double.MinValue;
// Type identifier.
public string Type { get; set; } = "";
// Manufacturer.
public string Manufacturer { get; set; } = "";
// Model.
public string Model { get; set; } = "";
// Country of aircraft is registered.
public string Country { get; set; } = "";
// Category derived of aircraft's wake turbulence category.
// [0: unknwon]
// [1: Light]
// [2: Medium]
// [3: Heavy]
// [4: Superheavy]
public int Category { get; set; } = 0;
// Depearture airport.
public string From { get; set; } = "";
// Destination airport.
public string To { get; set; } = "";
// Vertical speed [ft/min].
public int VSpeed { get; set; } = 0;
// Indicates that aircraft is on ground
public bool Ground { get; set; } = false;
}
// holds al list of aircraft info
public class PlaneFeedPluginPlaneInfoList : List<PlaneFeedPluginPlaneInfo>
{
}
}