/// <summary> /// 删除管道 /// </summary> /// <param name="cameraNO"></param> public VideoPipe DeleteVideoPipe(string cameraNO) { if (listVideoPipeOperateLock.TryEnterWriteLock(CgwConst.ENTER_PIPE_LOCK_WAIT_TIME)) { try { if (listVideoPipe.Exists((x) => { return(x.CameraNo == cameraNO ? true : false); })) { VideoPipe videoPipe = listVideoPipe.Find((x) => { return(x.CameraNo == cameraNO ? true : false); }); if (videoPipe != null) { listVideoPipe.Remove(videoPipe); return(videoPipe); } } } finally { listVideoPipeOperateLock.ExitWriteLock(); } } return(null); }
/// <summary> /// 增加管道 /// </summary> /// <param name="cameraNo">摄像机编码</param> /// <param name="pipeName">管道名称</param> /// <returns>VideoPipe</returns> public VideoPipe AddVideoPipe(string cameraNo, string pipeName) { if (listVideoPipeOperateLock.TryEnterWriteLock(CgwConst.ENTER_PIPE_LOCK_WAIT_TIME)) { try { int index = listVideoPipe.FindIndex((x) => { return(x.PipeName == pipeName ? true : false); }); if (index == -1) { VideoPipe videoPipe = new VideoPipe(pipeName); videoPipe.CameraNo = cameraNo; listVideoPipe.Add(videoPipe); return(videoPipe); } } finally { listVideoPipeOperateLock.ExitWriteLock(); } } return(null); }
/// <summary> /// 查询管道 /// </summary> /// <param name="cameraNO">摄像机编码</param> /// <returns></returns> public VideoPipe GetVideoPipe(string cameraNO) { if (listVideoPipeOperateLock.TryEnterWriteLock(CgwConst.ENTER_PIPE_LOCK_WAIT_TIME)) { try { int index = listVideoPipe.FindIndex((x) => { return(x.CameraNo == cameraNO ? true : false); }); if (index != -1) { VideoPipe videoPipe = listVideoPipe.Find((x) => { return(x.CameraNo == cameraNO ? true : false); }); return(videoPipe); } } finally { listVideoPipeOperateLock.ExitWriteLock(); } } return(null); }
/// <summary> /// 增加管道 /// </summary> /// <param name="cameraNo">摄像机编码</param> /// <param name="pipeName">管道名称</param> /// <returns>VideoPipe</returns> public VideoPipe AddVideoPipe(string cameraNo, string pipeName) { if (listVideoPipeOperateLock.TryEnterWriteLock(CgwConst.ENTER_PIPE_LOCK_WAIT_TIME)) { try { int index = listVideoPipe.FindIndex((x) => { return x.PipeName == pipeName ? true : false; }); if (index == -1) { VideoPipe videoPipe = new VideoPipe(pipeName); videoPipe.CameraNo = cameraNo; listVideoPipe.Add(videoPipe); return videoPipe; } } finally { listVideoPipeOperateLock.ExitWriteLock(); } } return null; }