ChronopicWindow.checkChronopicDisconnected C# (CSharp) Method

checkChronopicDisconnected() private method

private checkChronopicDisconnected ( ) : void
return void
    private void checkChronopicDisconnected()
    {
        bool errorFound = false;

        foreach(ChronopicPortData a in cpd) {
            Chronopic myCP;
            Chronopic.Plataforma myPS;
            if(a.Num == 1) {
                myCP = cp;
                myPS = platformState;
            } else if(a.Num == 2) {
                myCP = cp2;
                myPS = platformState2;
            } else if(a.Num == 3) {
                myCP = cp3;
                myPS = platformState3;
            } else {
                myCP = cp4;
                myPS = platformState4;
            }

            bool ok = false;
            if(a.Connected) {
                string myPort = a.Port;

                //http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=88415
                //https://bugzilla.xamarin.com/show_bug.cgi?id=15514
                if(! isWindows) {
                    if(! File.Exists(myPort)) {
                        LogB.Error("port does not exists:", myPort);
                        errorFound = true;
                    }
                }

                if(! errorFound) {
                    //try {
                    ok = myCP.Read_platform(out myPS);
                    //} catch {
                    //	LogB.DebugLine("catch at 1");
                    //}
                    if(!ok) {
                        LogB.Error("false at 1");
                        errorFound = true;
                    }
                }
            }
        }

        if(errorFound) {
            ArrayList myCPD = new ArrayList();
            for(int i=1; i<=4; i++) {
                ChronopicPortData b = new ChronopicPortData(i,"",false);
                myCPD.Add(b);
            }
            Create (myCPD, encoderPort, true, volumeOn);

            connected = false;

            new DialogMessage(Constants.MessageTypes.WARNING,
                    Catalog.GetString("One or more Chronopics have been disconnected.") + "\n" +
                    Catalog.GetString("Please connect again, and configure on Chronopic window."));
        }
    }

Usage Example

Example #1
0
    static public ChronopicWindow View(ChronojumpMode cmode, bool volumeOn)
    {
        if (ChronopicWindowBox == null)
        {
            ChronopicWindowBox = new ChronopicWindow(null, cpd);
        }

        LogB.Information("view cp is null? " + (ChronopicWindowBox.cp == null).ToString());


        ChronopicWindowBox.volumeOn = volumeOn;

        if (cmode == ChronojumpMode.JUMPORRUN || cmode == ChronojumpMode.OTHER)
        {
            ChronopicWindowBox.notebook_main.CurrentPage = 0;
            ChronopicWindowBox.checkChronopicDisconnected();             //encoder does not need this because there's no connection

            ChronopicWindowBox.frame_supplementary.Visible =
                (cmode == ChronojumpMode.OTHER); //can have multichronopic
        }
        else                                     //cmode == ChronojumpMode.ENCODER)
        {
            ChronopicWindowBox.notebook_main.CurrentPage = 1;
        }

        ChronopicWindowBox.createCombos();
        ChronopicWindowBox.setEncoderPort(encoderPort);

        //ports info comes from gui/chronojump.cs to Create mehod
        if (!ChronopicWindowBox.connected)
        {
            ChronopicWindowBox.connectingInfoShow();
        }

        ChronopicWindowBox.chronopic_window.Show();
        ChronopicWindowBox.chronopic_window.Present();

        return(ChronopicWindowBox);
    }