Ejemplo n.º 1
0
 public static networkManager getInstance(incomingLineEventHandler incomingDriveLineHandler, incomingLineEventHandler incomingEngineeringLineHandler, incomingLineEventHandler incomingArmLineHandler, incomingLineEventHandler incomingLogisticsLineHandler)
 {
     if (NM != null)
     {
         return NM;
     }
     else
     {
         NM = new networkManager(incomingDriveLineHandler, incomingEngineeringLineHandler, incomingArmLineHandler, incomingLogisticsLineHandler);
         return NM;
     }
 }
Ejemplo 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);
            }

        }
Ejemplo n.º 3
0
 private armManager(Arduino armArduino, Arduino handArduino, networkManager _netman)
 {
     armDuino = armArduino;
     handDuino = handArduino;
     netMan = _netman;
     netMan.incomingArm += netMan_incomingArm;
     armDuino.Data_Received += armDuino_Data_Received;
     handDuino.Data_Received += handDuino_Data_Received;
 }
Ejemplo n.º 4
0
 public static armManager getInstance(Arduino armArduino, Arduino handArduino, networkManager _netman)
 {
     if (instance == null)
     {
         instance = new armManager(armArduino,handArduino,_netman);
     }
     return instance;
 }
Ejemplo n.º 5
0
 private ptManager(Arduino panTiltArduino, networkManager _netMan)
 {
     ptDuino = panTiltArduino;
     netMan = _netMan;
     ptDuino.Data_Received += ptDuino_Data_Received;
     netMan.incomingDrive += netMan_incomingDrive;
 }
Ejemplo n.º 6
0
 public static ptManager getInstance(Arduino panTiltArduino, networkManager _netMan)
 {
     if (instance == null)
     {
         instance = new ptManager(panTiltArduino, _netMan);
     }
     return instance;
 }
Ejemplo n.º 7
0
        private driveManager(Arduino backArduino, Arduino frontArduino, networkManager _netMan)
        {
            frontDriveDuino = frontArduino;
            backDriveDuino = backArduino;

            frontDriveDuino.Data_Received += frontDriveDuino_Data_Received;
            backDriveDuino.Data_Received += backDriveDuino_Data_Received;

            netMan = _netMan;
            netMan.incomingDrive += netMan_incomingDrive;
        }
Ejemplo n.º 8
0
 public static driveManager getInstance(Arduino backArduino, Arduino frontArduino, networkManager _netMan)
 {
     if (instance == null)
     {
         instance = new driveManager(backArduino, frontArduino, _netMan);
     }
     return instance;
 }