private void AttachCameraView() { switch (vsDeviceType) { case VsDeviceType.CAMERA: { if (vsAttachType == VsAttachType.ATTACH_RECEIVER) { vsCoreMonitor.DetachCameraView(vsDeviceName, this); // vsCoreMonitor.DetachCameraViewAnalyzer(vsDeviceName, this); vsViewer.Image = global::Vs.Monitor.Properties.Resources.isys; vsViewer.SizeMode = PictureBoxSizeMode.CenterImage; vsCoreMonitor.AttachCameraViewAnalyzer(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_ANALYZER; } else { //vsCoreMonitor.DetachCameraView(vsDeviceName, this); vsCoreMonitor.DetachCameraViewAnalyzer(vsDeviceName, this); vsViewer.Image = global::Vs.Monitor.Properties.Resources.isys; vsViewer.SizeMode = PictureBoxSizeMode.CenterImage; vsCoreMonitor.AttachCameraView(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_RECEIVER; } break; } case VsDeviceType.CHANNEL: { if (vsAttachType == VsAttachType.ATTACH_RECEIVER) { vsCoreMonitor.DetachChannelView(vsDeviceName, this); //vsCoreMonitor.DetachChannelViewAnalyzer(vsDeviceName, this); vsViewer.Image = global::Vs.Monitor.Properties.Resources.isys; vsViewer.SizeMode = PictureBoxSizeMode.CenterImage; vsCoreMonitor.AttachChannelViewAnalyzer(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_ANALYZER; } else { //vsCoreMonitor.DetachChannelView(vsDeviceName, this); vsCoreMonitor.DetachChannelViewAnalyzer(vsDeviceName, this); vsViewer.Image = global::Vs.Monitor.Properties.Resources.isys; vsViewer.SizeMode = PictureBoxSizeMode.CenterImage; vsCoreMonitor.AttachChannelView(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_RECEIVER; } break; } } }
public void InitialViewer() { vsViewer.Image = global::Vs.Monitor.Properties.Resources.isys; vsViewer.SizeMode = PictureBoxSizeMode.CenterImage; i = 0; // initial toolbox - disable labelStatus.Text = ""; panelTool.Focus(); buttonStop.Enabled = false; buttonAttach.Enabled = false; buttonAnalyzer.Enabled = false; this.BorderStyle = BorderStyle.None; vsDeviceType = VsDeviceType.CAMERA; vsAttachType = VsAttachType.ATTACH_RECEIVER; vsStatus = VsViewStatusType.VIEW_AVAIABLE; }
// drag drop into window void VsCameraViewer_DragDrop(object sender, DragEventArgs e) { this.BorderStyle = BorderStyle.None; if (vsStatus == VsViewStatusType.VIEW_CONNECTING || vsStatus == VsViewStatusType.VIEW_CONNECTED) return; string send = (string)e.Data.GetData(typeof(string)); string[] cmd = send.Split('\\'); vsDeviceName = cmd[1]; // check if not root node if (cmd.Length == 2 && cmd[0] == "Analyzers") { // set flag vsDeviceType = VsDeviceType.CAMERA; vsStatus = VsViewStatusType.VIEW_CONNECTING; // update event this.vsUpdateEvent(this, new VsMonitorEventArgs( new VsParameter(VsAppControlType.APP_SIGLEVIEW, VsAppControlType.APP_SIGLEVIEW, vsDeviceType, vsDeviceName))); labelStatus.Text = "Connecting..."; // the current camera is connected if (!vsCoreMonitor.ConnectingCamera(vsDeviceName)) { // not connected // try to connect if (!vsCoreMonitor.ConnectCamera(vsDeviceName, false)) return; // cache current camera vsCamera = vsCoreMonitor.GetCameraByName(vsDeviceName); } // the camera is connected // attach to current view vsCoreMonitor.AttachCameraView(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_RECEIVER; // enable toolbox buttonStop.Enabled = true; buttonAttach.Enabled = true; buttonAnalyzer.Enabled = true; } else if (cmd.Length == 2 && cmd[0] == "Layouts") { // set flag vsDeviceType = VsDeviceType.CHANNEL; vsStatus = VsViewStatusType.VIEW_CONNECTING; // update event this.vsUpdateEvent(this, new VsMonitorEventArgs( new VsParameter(VsAppControlType.APP_SIGLEVIEW, VsAppControlType.APP_SIGLEVIEW, vsDeviceType, vsDeviceName))); // the current channel is connected if (!vsCoreMonitor.ConnectingChannel(vsDeviceName)) { // not connected // try to connect if (!vsCoreMonitor.ConnectChannel(vsDeviceName, false)) return; // cache current camera vsChannel = vsCoreMonitor.GetChannelByName(vsDeviceName); } // the camera is connected // attach to current view vsCoreMonitor.AttachChannelView(vsDeviceName, this); // enable toolbox buttonStop.Enabled = true; buttonAttach.Enabled = true; buttonAnalyzer.Enabled = true; } }
public void connectDevice(string send) { if (vsStatus == VsViewStatusType.VIEW_CONNECTING || vsStatus == VsViewStatusType.VIEW_CONNECTED) { return; } string[] cmd = send.Split('\\'); vsDeviceName = cmd[1]; // check if not root node if (cmd.Length == 2 && cmd[0] == "Analyzers") { // set flag vsDeviceType = VsDeviceType.CAMERA; vsStatus = VsViewStatusType.VIEW_CONNECTING; // update event this.vsUpdateEvent(this, new VsMonitorEventArgs( new VsParameter(VsAppControlType.APP_SIGLEVIEW, VsAppControlType.APP_SIGLEVIEW, vsDeviceType, vsDeviceName))); labelStatus.Text = "Connecting..."; // the current camera is connected if (!vsCoreMonitor.ConnectingCamera(vsDeviceName)) { // not connected // try to connect if (!vsCoreMonitor.ConnectCamera(vsDeviceName, false)) { return; } // cache current camera vsCamera = vsCoreMonitor.GetCameraByName(vsDeviceName); } // the camera is connected // attach to current view vsCoreMonitor.AttachCameraView(vsDeviceName, this); vsAttachType = VsAttachType.ATTACH_RECEIVER; // enable toolbox buttonStop.Enabled = true; buttonAttach.Enabled = true; buttonAnalyzer.Enabled = true; } else if (cmd.Length == 2 && cmd[0] == "Layouts") { // set flag vsDeviceType = VsDeviceType.CHANNEL; vsStatus = VsViewStatusType.VIEW_CONNECTING; // update event this.vsUpdateEvent(this, new VsMonitorEventArgs( new VsParameter(VsAppControlType.APP_SIGLEVIEW, VsAppControlType.APP_SIGLEVIEW, vsDeviceType, vsDeviceName))); // the current channel is connected if (!vsCoreMonitor.ConnectingChannel(vsDeviceName)) { // not connected // try to connect if (!vsCoreMonitor.ConnectChannel(vsDeviceName, false)) { return; } // cache current camera vsChannel = vsCoreMonitor.GetChannelByName(vsDeviceName); } // the camera is connected // attach to current view vsCoreMonitor.AttachChannelView(vsDeviceName, this); // enable toolbox buttonStop.Enabled = true; buttonAttach.Enabled = true; buttonAnalyzer.Enabled = true; } }