void sc_OnRecvOpen(SimConnect sender, SIMCONNECT_RECV_OPEN data) { log.Info(string.Format("Connected to {0}\r\n Simulator Version:\t{1}.{2}.{3}.{4}\r\n SimConnect Version:\t{5}.{6}.{7}.{8}", data.szApplicationName, data.dwApplicationVersionMajor, data.dwApplicationVersionMinor, data.dwApplicationBuildMajor, data.dwApplicationBuildMinor, data.dwSimConnectVersionMajor, data.dwSimConnectVersionMinor, data.dwSimConnectBuildMajor, data.dwSimConnectBuildMinor)); OnRaiseOpenEvent(new OpenEventArgs(data.szApplicationName)); string simIdent = "MSFS"; if (data.szApplicationName.Contains("Flight Simulator X")) { simIdent = "FSX"; } else if (data.szApplicationName.Contains("ESP")) { simIdent = "ESP"; } else if (data.szApplicationName.Contains("Prepar3D")) { simIdent = "P3D"; } ffUdp = ForeFlightUdp.Instance; ffUdp.SetSimulator(simIdent); sc.RequestDataOnUserSimObject(Requests.UserPosition, SIMCONNECT_PERIOD.SECOND, SIMCONNECT_DATA_REQUEST_FLAG.DEFAULT, typeof(Position)); sc.RequestDataOnSimObjectType(Requests.TrafficEnumerate, 200000, SIMCONNECT_SIMOBJECT_TYPE.AIRCRAFT & SIMCONNECT_SIMOBJECT_TYPE.HELICOPTER, typeof(TrafficInfo)); sc.SubscribeToSystemEvent(Events.ObjectAdded, "ObjectAdded"); sc.SubscribeToSystemEvent(Events.SixHz, "6Hz"); }
protected override void OnRecvOpen(SimConnect sender, SIMCONNECT_RECV_OPEN data) { // call parent class for default behavior base.OnRecvOpen(sender, data); string simIdent = "MSFS"; if (data.szApplicationName.Contains("Flight Simulator X")) { simIdent = "FSX"; } else if (data.szApplicationName.Contains("ESP")) { simIdent = "ESP"; } else if (data.szApplicationName.Contains("Prepar3D")) { simIdent = "P3D"; } ffUdp = ForeFlightUdp.Instance; ffUdp.SetSimulator(simIdent); Client.RequestDataOnUserSimObject(Requests.UserPosition, SIMCONNECT_PERIOD.SECOND, SIMCONNECT_DATA_REQUEST_FLAG.DEFAULT, typeof(Position)); Client.RequestDataOnSimObjectType(Requests.TrafficEnumerate, 200000, SIMCONNECT_SIMOBJECT_TYPE.AIRCRAFT & SIMCONNECT_SIMOBJECT_TYPE.HELICOPTER, typeof(TrafficInfo)); Client.SubscribeToSystemEvent(Events.ObjectAdded, "ObjectAdded"); Client.SubscribeToSystemEvent(Events.SixHz, "6Hz"); }