imBMW.iBus.Devices.Real.InstrumentClusterElectronics.SetSpeedLimit C# (CSharp) Method

SetSpeedLimit() public static method

public static SetSpeedLimit ( ushort limit ) : void
limit ushort
return void
        public static void SetSpeedLimit(ushort limit)
        {
            if (limit <= 0)
            {
                SetSpeedLimitOff();
                return;
            }
            if (limit < 10) // TODO check mph
            {
                limit = 10;
            }
            if (limit > 300) // TODO fix region settings
            {
                limit = 300;
            }
            var refresh = SpeedLimit == 0;
            if (limit != _lastSpeedLimit)
            {
                if (refresh)
                {
                    _lastSpeedLimit = limit;
                }
                Manager.EnqueueMessage(new Message(DeviceAddress.GraphicsNavigationDriver, DeviceAddress.InstrumentClusterElectronics, "Set speed limit", 0x40, 0x09, (byte)(limit >> 8), (byte)(limit & 0xFF)));
            }
            if (refresh)
            {
                Manager.EnqueueMessage(MessageSpeedLimitOn);
            }
        }