void Start() { pTrackedPlanes = new GameObject[30]; planeGenerator = GameObject.Find("Plane Generator"); portalMat = Resources.Load <Material>("PlaneGrid1") as Material; camScript = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <CameraMonitor>(); }
static void Main(string[] args) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); mp_aureus = AureusEdge.CreateAndInitializeAureus(msg); checkLicense(); settingsContent = readFromFile(Settings); //Declare all of the new global variables from above CAMS = new CameraCollection(); defaultAOI = new AOISettings(); email = new EmailSettings(); //Call the function to load everything loadAll(); TempCAMs = CAMS.clone(true); getLicenseNumber(); CM = new CameraMonitor(); camMonitorThread = new System.Threading.Thread(new System.Threading.ThreadStart(CM.monitor)); camMonitorThread.Start(); CF = new CameraForm(); Application.Run(CF); }
public PhotoCameraController(IPhotoCameraView photoCameraView) { this.photoCameraView = photoCameraView; CameraMonitor = new CameraMonitor { capturedImage = photoCameraView.CapturedImage }; }
// Start is called before the first frame update void Start() { state = GetComponent <StateManager>(); state.Init(); cameraMonitor = CameraMonitor.singleton; cameraMonitor.Init(this.transform); }
/// <summary> /// The character has been attached to the camera. Update the UI reference and initialze the character-related values. /// </summary> /// <param name="character">The character that the UI is monitoring.</param> private void AttachCharacter(GameObject character) { if (m_Character != character && m_Character != null) { EventHandler.UnregisterEvent <Item>(m_Character, "OnInventoryPrimaryItemChange", PrimaryItemChange); EventHandler.UnregisterEvent <bool>(m_Character, "OnAllowGameplayInput", AllowGameplayInput); EventHandler.UnregisterEvent <float>(m_Character, "OnCameraUpdateRecoil", UpdateRecoil); EventHandler.UnregisterEvent <bool>(m_Character, "OnLaserSightUseableLaserSightActive", DisableCrosshairs); EventHandler.UnregisterEvent <bool>(m_Character, "OnItemShowScope", DisableCrosshairs); EventHandler.UnregisterEvent(m_Character, "OnDeath", OnDeath); if (m_OnlyVisibleOnAim) { EventHandler.UnregisterEvent <bool>(m_Character, "OnControllerAim", OnAim); } } if (m_Character == character) { return; } m_Character = character; if (m_Character == null || !m_GameObject.activeInHierarchy) { // The object may be destroyed when Unity is ending. if (this != null) { EnableCrosshairsImage(false); } return; } SharedManager.InitializeSharedFields(m_Character, this); m_Controller = m_Character.GetComponent <RigidbodyCharacterController>(); if (m_Camera == null) { m_Camera = Utility.FindCamera(m_Character); m_CameraMonitor = m_Camera.GetComponent <CameraMonitor>(); m_CameraMonitor.Crosshairs = transform; SharedManager.InitializeSharedFields(m_Camera.gameObject, this); } PrimaryItemChange(m_CurrentPrimaryItem.Get()); // Register for the events. Do not register within OnEnable because the character may not be known at that time. EventHandler.RegisterEvent <Item>(m_Character, "OnInventoryPrimaryItemChange", PrimaryItemChange); EventHandler.RegisterEvent <bool>(m_Character, "OnAllowGameplayInput", AllowGameplayInput); EventHandler.RegisterEvent <float>(m_Character, "OnCameraUpdateRecoil", UpdateRecoil); EventHandler.RegisterEvent <bool>(m_Character, "OnLaserSightUseableLaserSightActive", DisableCrosshairs); EventHandler.RegisterEvent <bool>(m_Character, "OnItemShowScope", DisableCrosshairs); EventHandler.RegisterEvent(m_Character, "OnDeath", OnDeath); if (m_OnlyVisibleOnAim) { EventHandler.RegisterEvent <bool>(m_Character, "OnControllerAim", OnAim); } EnableCrosshairsImage(!m_OnlyVisibleOnAim || m_Controller.Aiming); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); // Health checker SmartCardPrinterMonitor.Start(); CameraMonitor.Start(); SmartCardReaderMonitor.Start(); FingerprintReaderMonitor.Start(); BarcodeScannerMonitor.Start(); Application.Run(new Main()); }
protected override void Start() { base.Start(); #if !ENABLE_MULTIPLAYER // Store a reference to the camera so the ability can change views if the view is RPG. if (!m_IndependentLook.Invoke()) { var camera = Utility.FindCamera(m_GameObject); if (camera != null) { m_CameraMonitor = camera.GetComponent <CameraMonitor>(); } } #endif }
public void Start() { try { foreach (var camera in _settings.Cameras) { var monitor = new CameraMonitor(camera, _settings, _logger, _alarmHandlers); monitor.Start(_cancellationTokenSource.Token); _monitoredCameras.Add(monitor); } } catch (Exception e) { _logger.Write(LogEventLevel.Error, e, "CameraService error"); throw; } }
public async UniTask TakePhotoAsync(CameraMonitor capturedImage, CancellationToken ct) { var image = capturedImage.capturedImage; var(f, w, h) = (image.graphicsFormat, image.width, image.height); await UniTask.WaitForEndOfFrame(ct); var req = await AsyncGPUReadback.Request(image, 0).WithCancellation(ct); var rawByteArray = req.GetData <byte>(); await UniTask.SwitchToThreadPool(); using var jpg = ImageConversion.EncodeNativeArrayToJPG(rawByteArray, f, (uint)w, (uint)h); await UniTask.SwitchToMainThread(ct); var bytes = jpg.ToArray(); photographyDataStore.Save("jpg", bytes); }
private void Awake() { singleton = this; }
public async void StartMonitor() { if (_monitorObserver != null) { return; } await Task.Run(() => { var vd = _connectionService .CurrentSession? .GetService(CameraMonitor.ALVideoDeviceServiceName); if (vd == null) { return; } //設定をそのまま入れて購読開始 var subscribeName = new QiString(vd.Call( CameraMonitor.SubcsribeMethodName, new QiString(CameraMonitor.SubscriberDefaultName), new QiInt32((int)SelectedCamera), new QiInt32((int)SelectedResolution), new QiInt32((int)SelectedColorSpace), new QiInt32(SelectedFps) ).GetString()); //上の設定は途中でGUIから変更食らうのでコッチは固定するのがポイント var camType = SelectedCamera; var camRes = SelectedResolution; var camCs = SelectedColorSpace; double intervalSec = 1.0 / SelectedFps; int maxParallel = MaxParallelDownload; int parallelCount = 0; _monitorObserver = Observable.Timer(TimeSpan.FromSeconds(intervalSec), TimeSpan.FromSeconds(intervalSec)) .Subscribe(_ => { if (parallelCount >= maxParallel) { return; } var res = vd.Call(CameraMonitor.DownloadMethodName, subscribeName); //通信途絶すると恐らくエラーを食らうハズ if (res.ValueKind == QiValueKind.QiUnknown) { return; } //※本来は初期設定時の値を使えるハズだが、変なタイミングで設定を変える可能性もゼロではないので //いちおうColorSpaceとかバイト配列のサイズに関連する情報を確保する int width = res[0].GetInt32(); int height = res[1].GetInt32(); int channel = res[2].GetInt32(); var cs = (CameraColorSpace)res[3].GetInt32(); byte[] data = res[6].GetRaw(); if (width *height *channel != data.Length) { return; } CameraImage = CameraMonitor.GetFreezedImageFromBytes(data, camType, cs, camRes); }); }); }
public CameraManager() { this.cameraMap = new ConcurrentDictionary<string, Camera>(); this.monitor = new CameraMonitor(this.cameraMap); }
public CameraManager() { this.cameraMap = new ConcurrentDictionary <string, Camera>(); this.monitor = new CameraMonitor(this.cameraMap); }