Ejemplo n.º 1
0
        private void Run()
        {
            client = new SocketClient("Managed Data Request", System.Net.Dns.GetHostName(), 11000);

            client.MapClientEventToSimEvent(MyEvents.Brakes, "BRAKES");
            client.AddClientEventToNotificationGroup(MyGroups.One, MyEvents.Brakes);

            client.MapClientEventToSimEvent(MyEvents.ElevatorTrimSet, "ELEVATOR_TRIM_SET");
            client.AddClientEventToNotificationGroup(MyGroups.One, MyEvents.ElevatorTrimSet);

            client.MapClientEventToSimEvent(MyEvents.ElevTrimDown, "ELEV_TRIM_DN");
            client.AddClientEventToNotificationGroup(MyGroups.One, MyEvents.ElevTrimDown);

            client.MapClientEventToSimEvent(MyEvents.ElevTrimUp, "ELEV_TRIM_UP");
            client.AddClientEventToNotificationGroup(MyGroups.One, MyEvents.ElevTrimUp);

            client.SetNotificationGroupPriority(MyGroups.One, GroupPriority.Highest);

            client.AddToDataDefinition(MyDefinitions.One, "ELEVATOR TRIM INDICATOR", "Position", Datatype.Float32, 0f, Constants.Unused);
            client.AddToDataDefinition(MyDefinitions.One, "ELEVATOR TRIM POSITION", "Degrees", Datatype.Float32, 0f, Constants.Unused);
            client.RegisterStructToDataDefinition(MyDefinitions.One, typeof(Struct1));

            client.AddToDataDefinition(MyDefinitions.Two, "VELOCITY BODY Y", "Feet per second", Datatype.Float32, 0f, Constants.Unused);
            client.AddToDataDefinition(MyDefinitions.Two, "VELOCITY WORLD Y", "Feet per second", Datatype.Float32, 0f, Constants.Unused);
            client.AddToDataDefinition(MyDefinitions.Two, "VERTICAL SPEED", "Feet per second", Datatype.Float32, 0f, Constants.Unused);
            client.AddToDataDefinition(MyDefinitions.Two, "ELEVATOR TRIM POSITION", "Degrees", Datatype.Float32, 0f, Constants.Unused);
            client.RegisterStructToDataDefinition(MyDefinitions.Two, typeof(Struct2));

            client.RequestDataOnSimObject(MyRequests.Two, MyDefinitions.Two, Constants.ObjectIdUser, Period.Second, DataRequestFlag.Changed);

            //unchecked
            //{
            //	client.TransmitClientEvent (Constants.ObjectIdUser, MyEvents.ElevatorTrimSet, (uint)0, MyGroups.One, EventFlag.Default);
            //}

            while (running)
            {
                try
                {
                    // I really wish this call would return S_FALSE when no message exists
                    // instead it returns an error conditon that needs to be caught
                    var nextDispatch = client.GetNextDispatch();
                    OnReceiveFromServer(nextDispatch);
                }
                catch (Exception)
                {
                    Thread.Sleep(10);
                }
            }
        }
Ejemplo n.º 2
0
 public override void RegisterDataDefinition(SocketClient simConnect)
 {
     simConnect.AddToDataDefinition(MyDefinitions.ThrottleValue, "GENERAL ENG THROTTLE LEVER POSITION:1", "Percent over 100", Datatype.Float32, 0f, Constants.Unused);
     simConnect.RegisterStructToDataDefinition(MyDefinitions.ThrottleValue, typeof(ThrottleValue));
 }
Ejemplo n.º 3
0
 public override void RegisterDataDefinition(SocketClient simConnect)
 {
     simConnect.AddToDataDefinition(MyDefinitions.TrimValue, "ELEVATOR TRIM INDICATOR", "Position", Datatype.Float32, 0f, Constants.Unused);
     simConnect.RegisterStructToDataDefinition(MyDefinitions.TrimValue, typeof(TrimValue));
 }
Ejemplo n.º 4
0
 public override void RegisterDataDefinition(SocketClient simConnect)
 {
     simConnect.AddToDataDefinition(MyDefinitions.LandingGearValue, "GEAR HANDLE POSITION", "Bool", Datatype.Int32, 0f, Constants.Unused);
     simConnect.RegisterStructToDataDefinition(MyDefinitions.LandingGearValue, typeof(LandingGearValue));
 }
Ejemplo n.º 5
0
 public override void RegisterDataDefinition(SocketClient simConnect)
 {
     simConnect.AddToDataDefinition(MyDefinitions.ParkingBrakesValue, "BRAKE PARKING POSITION", "Bool", Datatype.Int32, 0f, Constants.Unused);
     simConnect.RegisterStructToDataDefinition(MyDefinitions.ParkingBrakesValue, typeof(ParkingBrakesValue));
 }
Ejemplo n.º 6
0
 public override void RegisterDataDefinition(SocketClient simConnect)
 {
     simConnect.AddToDataDefinition(MyDefinitions.FlapsValue, "FLAPS HANDLE INDEX", "Number", Datatype.Int32, 0f, Constants.Unused);
     simConnect.AddToDataDefinition(MyDefinitions.FlapsValue, "FLAPS NUM HANDLE POSITIONS", "Number", Datatype.Int32, 0f, Constants.Unused);
     simConnect.RegisterStructToDataDefinition(MyDefinitions.FlapsValue, typeof(FlapsValue));
 }