예제 #1
0
 public DataParser()
 {
     previousTelemetry = null;
     currentTelemetry  = null;
     sessionData       = null;
     displayMode       = Enums.DisplayMode.DEFAULT;
     modeTimer         = 0;
     startRPM          = 0;
     endRPM            = 0;
     RPMInterval       = 0;
     showTC            = true;
     showBB            = true;
     dotBin            = 0;
     carTag            = "";
     disableLeds       = false;
     LoadXML();
 }
예제 #2
0
        private void SetDisplayMode()
        {
            if (previousTelemetry == null || currentTelemetry == null)
            {
                return;
            }

            if (currentTelemetry.InCar())
            {
                disableLeds = false;
                if (displayMode == Enums.DisplayMode.TCCHANGE)
                {
                    if (currentTelemetry.GetUpdateTime() - modeTimer > 2)
                    {
                        modeTimer   = 0;
                        displayMode = Enums.DisplayMode.DEFAULT;
                    }
                }
                else if (displayMode == Enums.DisplayMode.BBCHANGE)
                {
                    if (currentTelemetry.GetUpdateTime() - modeTimer > 2)
                    {
                        modeTimer   = 0;
                        displayMode = Enums.DisplayMode.DEFAULT;
                    }
                }
                else if (displayMode == Enums.DisplayMode.GEARCHANGE)
                {
                    if (currentTelemetry.GetUpdateTime() - modeTimer > 1)
                    {
                        modeTimer   = 0;
                        displayMode = Enums.DisplayMode.DEFAULT;
                    }
                }
                else
                {
                    displayMode = Enums.DisplayMode.DEFAULT;
                }

                if (previousTelemetry.GetTC() != currentTelemetry.GetTC() && showTC)
                {
                    modeTimer   = currentTelemetry.GetUpdateTime();
                    displayMode = Enums.DisplayMode.TCCHANGE;
                    return;
                }

                if (previousTelemetry.GetBB() != currentTelemetry.GetBB() && showBB)
                {
                    modeTimer   = currentTelemetry.GetUpdateTime();
                    displayMode = Enums.DisplayMode.BBCHANGE;
                    return;
                }

                if (!previousTelemetry.GetGear().Equals(currentTelemetry.GetGear()))
                {
                    modeTimer   = currentTelemetry.GetUpdateTime();
                    displayMode = Enums.DisplayMode.GEARCHANGE;
                    return;
                }
            }
            else
            {
                disableLeds = true;
                displayMode = Enums.DisplayMode.TIMELEFT;
            }
        }
예제 #3
0
 public VideoView(List <Video> videos, Enums.DisplayMode displayMode)
 {
     Videos      = videos;
     DisplayMode = displayMode;
 }