Example #1
0
        public override bool Seek(double absoluteTimestamp)
        {
#if PARALLEL
            OutStreams.AsParallel().ForAll(x =>
            {
                if (!x.InStream.SignalSeek(ref absoluteTimestamp))
                {
                    Logger.WARN("Unable to signal seek on an outbound stream");
                }
            });
#else
            foreach (
                var baseOutStream in
                OutStreams.Where(
                    baseOutStream => !baseOutStream.SignalSeek(ref absoluteTimestamp)))
            {
                Logger.WARN("Unable to signal seek on an outbound stream");
            }
#endif
            if (!SignalSeek(ref absoluteTimestamp))
            {
                Logger.FATAL("Unable to signal seek");
                return(false);
            }
            return(true);
        }
Example #2
0
        public override bool Stop()
        {
            if (!SignalStop())
            {
                Logger.FATAL("Unable to signal stop");
                return(false);
            }
#if PARALLEL
            OutStreams.AsParallel().ForAll(x =>
            {
                if (!x.InStream.SignalStop())
                {
                    Logger.WARN("Unable to signal stop on an outbound stream");
                }
            });
#else
            foreach (
                var baseOutStream in
                OutStreams.Where(
                    baseOutStream => !baseOutStream.SignalStop()))
            {
                Logger.WARN("Unable to signal stop on an outbound stream");
            }
#endif
            return(true);
        }
Example #3
0
        public override bool Play(double absoluteTimestamp, double length)
        {
            if (!SignalPlay(ref absoluteTimestamp, ref length))
            {
                Logger.FATAL("Unable to signal play");
                return(false);
            }

#if PARALLEL
            OutStreams.AsParallel().ForAll(x =>
            {
                if (!x.InStream.SignalPlay(ref absoluteTimestamp, ref length))
                {
                    Logger.WARN("Unable to signal play on an outbound stream");
                }
            });
#else
            foreach (
                var baseOutStream in
                OutStreams.Where(
                    baseOutStream => !baseOutStream.SignalPlay(ref absoluteTimestamp, ref length)))
            {
                Logger.WARN("Unable to signal play on an outbound stream");
            }
#endif
            return(true);
        }