Exemplo n.º 1
0
 /// <summary>
 /// Returns an instance (THE instance actually) of the ROCInfo object. The timer passed is how often
 /// the object will gather and report info about ROC such as temperature in milliseconds.
 /// </summary>
 /// <param name="updatePeriod"></param>
 /// <returns></returns>
 public static ROCInfo getInstance(int _updatePeriod)
 {
     if (instance == null)
     {
         instance = new ROCInfo(_updatePeriod);
     }
     return instance;
 }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();

            driveIPLabel.Content = rocConstants.MCIP_DRIVE.ToString();
            armIPLabel.Content = rocConstants.MCIP_ARM.ToString();
            logisticsIPLabel.Content = rocConstants.MCIP_LOGISTICS;
            engineeringIPLabel.Content = rocConstants.MCIP_ENG.ToString();

            NetMan = networkManager.getInstance(incomingDriveLineManager, incomingEngLineManager, incomingArmLineManager, incomingLogisticsLineManager);
            NetMan.DriveConnectionStatusChanged += NetMan_DriveConnectionStatusChanged;
            NetMan.EngineeringConnectionStatusChanged += NetMan_EngineeringConnectionStatusChanged;
            NetMan.ArmConnectionStatusChanged += NetMan_ArmConnectionStatusChanged;
            NetMan.LogisticsConnectionStatusChanged += NetMan_LogisticsConnectionStatusChanged;

            ArduMan = ArduinoManager.Instance;
            ArduMan.findArduinos();

            backDrive = ArduMan.getDriveBackArduino(false);
            frontDrive = ArduMan.getDriveFrontArduino(false);
            ptDuino = ArduMan.getPanTiltArduino(true);
            ArmDuino = ArduMan.getArmArduino(false);
            HandDuino = ArduMan.getHandArduino(false);
            miscDuino = ArduMan.getMiscArduino(false);

            backDrive.Data_Received += backDrive_Data_Received;
            frontDrive.Data_Received += frontDrive_Data_Received;
            ptDuino.Data_Received += ptDuino_Data_Received;
            ArmDuino.Data_Received += ArmDuino_Data_Received;
            HandDuino.Data_Received += HandDuino_Data_Received;
            miscDuino.Data_Received += miscDuino_Data_Received;

            driveMan = driveManager.getInstance(backDrive, frontDrive, NetMan);
            ptMan = ptManager.getInstance(ptDuino, NetMan);
            armMan = armManager.getInstance(ArmDuino, HandDuino, NetMan);

            hwMonitor = ROCInfo.getInstance(1000);//updates once per second
            hwMonitor.updatedValue += hwMonitor_updatedValue;

            camMan = cameraManager.getInstance();
            camMan.assignCameras();

            VideoCaptureDevice panTiltLeft;
            VideoCaptureDevice panTiltRight;
            if(camMan.getCamera(rocConstants.CAMS.PT_left, out panTiltLeft)  &&  camMan.getCamera(rocConstants.CAMS.PT_right, out panTiltRight)){ //if both the left and right cameras are found...
                panTiltTransmitter = new managedDualVideoTransmitter(panTiltLeft, panTiltRight, rocConstants.MCIP_DRIVE, rocConstants.MCPORT_DRIVE_VIDEO_OCULUS);
                panTiltTransmitter.startTransmitting();
            }

            //////////////
            ///VIDEO CAMS SETUP
            //////////////

            VideoCaptureDevice palmCam;
            if (camMan.getCamera(rocConstants.CAMS.PALM, out palmCam))
            {
                palmCamTransmitter = new managedVideoTransmitter(palmCam, rocConstants.MCIP_ARM, rocConstants.MCPORT_ARM_VIDEO_PALM);
            }

            VideoCaptureDevice noseCam;
            if (camMan.getCamera(rocConstants.CAMS.NOSE, out noseCam))
            {
                noseCamTransmitter = new managedVideoTransmitter(noseCam, rocConstants.MCIP_DRIVE, rocConstants.MCPORT_DRIVE_VIDEO_NOSE);
            }

            VideoCaptureDevice humerusCam;
            if (camMan.getCamera(rocConstants.CAMS.Humerus, out humerusCam))
            {
                humerusCamTransmitter = new managedVideoTransmitter(humerusCam, rocConstants.MCIP_ARM, rocConstants.MCPORT_ARM_VIDEO_HUMERUS);
            }

            //////////////
            ///SNAPSHOT CAMS SETUP
            //////////////

            VideoCaptureDevice logFrontCam;
            if (camMan.getCamera(rocConstants.CAMS.LOG_FRONT, out logFrontCam))
            {
                logFrontSS = new snapShotSender(logFrontCam);
            }

            VideoCaptureDevice logRightCam;
            if (camMan.getCamera(rocConstants.CAMS.LOG_RIGHT, out logRightCam))
            {
                logRightSS = new snapShotSender(logRightCam);
            }

            VideoCaptureDevice logBackCam;
            if (camMan.getCamera(rocConstants.CAMS.LOG_BACK, out logBackCam))
            {
                logBackSS = new snapShotSender(logBackCam);
            }

            VideoCaptureDevice logLeftCam;
            if (camMan.getCamera(rocConstants.CAMS.LOG_LEFT, out logLeftCam))
            {
                logLeftSS = new snapShotSender(logLeftCam);
            }

        }
Exemplo n.º 3
0
 public MainWindow()
 {
     InitializeComponent();
     rocInfoTest = ROCInfo.getInstance(500);
     rocInfoTest.updatedValue += rocInfoTest_updatedValue;
 }