Пример #1
0
        /// <summary>
        /// Смещает метку канала на заданное кол-во микросекунд.
        /// Возвращает смещение в микросекундах,
        /// на которое реально была перемещена метка канала.
        /// </summary>
        /// <param name="markerId">Идентификатор метки</param>
        /// <param name="markerOffset">Смещение метки в микросекундах</param>
        /// <param name="channelName">Имя канала данных</param>
        public static double MoveChannelMarker(
            this PatientPhysioData _this,
            long markerId,
            long markerOffset,
            string channelName)
        {
            if (!_this.ContainsMarker(markerId))
            {
                return(0);
            }

            var marker = _this.GetMarkerByIdOrDefault(markerId);

            var channelMarker = GetChannelMarkByChannelName(marker.ChannelMarks, channelName);

            if (null == channelMarker)
            {
                return(0);
            }

            var channel = _this.GetChannelData(channelName);

            if (null == channel)
            {
                return(0);
            }

            return(_this.MoveChannelMarker(channelMarker, markerOffset, channel));
        }
Пример #2
0
        public static ChannelData GetChannelDataFromLeftToRight(
            this PatientPhysioData _this,
            string channelName,
            long leftMarkerId,
            long rightMarkerId)
        {
            var channelData = _this.GetChannelData(channelName);

            return(_this.GetChannelDataFromLeftToRight(channelData, leftMarkerId, 0, rightMarkerId, 0));
        }