Ejemplo n.º 1
0
 public override void Execute(Character caller, string[] args)
 {
     if (args.Length < 1)
     {
         ShowSyntax(caller);
     }
     else
     {
         if (args[0].ToLower().StartsWith("-header"))
         {
             if (args.Length < 2)
             {
                 ShowSyntax(caller);
             }
             else
             {
                 ChannelData.Tip(CombineArgs(args, 1), args[0].Split(':')[1]);
             }
         }
         else
         {
             ChannelData.Tip(CombineArgs(args, 0));
         }
     }
 }
Ejemplo n.º 2
0
        public void TestStreamingEndpointCreateFailedRetry()
        {
            var expected = new ChannelData {
                Name = "testData"
            };
            var fakeException   = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 10, expected);

            dataContextMock.Setup(ctxt => ctxt.AddObject("StreamingEndpoints", It.IsAny <object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            try
            {
                _mediaContext.StreamingEndpoints.Create("unittest", 0);
            }
            catch (WebException x)
            {
                dataContextMock.Verify(ctxt => ctxt.SaveChangesAsync(It.IsAny <object>()), Times.AtLeast(3));
                Assert.AreEqual(fakeException, x);
                throw;
            }

            Assert.Fail("Expected exception");
        }
Ejemplo n.º 3
0
 public LoggedDataSweep(Timestamp timestamp, ulong tick, ChannelData data, bool calsApplied) : this(msclPINVOKE.new_LoggedDataSweep__SWIG_1(Timestamp.getCPtr(timestamp), tick, ChannelData.getCPtr(data), calsApplied), true)
 {
     if (msclPINVOKE.SWIGPendingException.Pending)
     {
         throw msclPINVOKE.SWIGPendingException.Retrieve();
     }
 }
Ejemplo n.º 4
0
        public TwitchVideo(JToken apiResponse)
        {
            int length, views, audioFps;
            double mediumFps, mobileFps, highFps, lowFps, chunkedFps;

            if (int.TryParse(apiResponse.SelectToken("length").ToString(), out length)) _length = length;
            if (int.TryParse(apiResponse.SelectToken("views").ToString(), out views)) _views = views;

            int.TryParse(apiResponse.SelectToken("fps").SelectToken("audio_only").ToString(), out audioFps);
            double.TryParse(apiResponse.SelectToken("fps").SelectToken("medium").ToString(), out mediumFps);
            double.TryParse(apiResponse.SelectToken("fps").SelectToken("mobile").ToString(), out mobileFps);
            double.TryParse(apiResponse.SelectToken("fps").SelectToken("high").ToString(), out highFps);
            double.TryParse(apiResponse.SelectToken("fps").SelectToken("low").ToString(), out lowFps);
            double.TryParse(apiResponse.SelectToken("fps").SelectToken("chunked").ToString(), out chunkedFps);

            _broadcastId = apiResponse.SelectToken("broadcast_id").ToString();
            _description = apiResponse.SelectToken("description").ToString();
            _fps = new FpsData(audioFps, mediumFps, mobileFps, highFps, lowFps, chunkedFps);
            _game = apiResponse.SelectToken("game").ToString();
            _id = apiResponse.SelectToken("_id").ToString();
            _preview = apiResponse.SelectToken("preview").ToString();
            _recordedAt = apiResponse.SelectToken("recorded_at").ToString();
            _status = apiResponse.SelectToken("status").ToString();
            _tagList = apiResponse.SelectToken("tag_list").ToString();
            _title = apiResponse.SelectToken("title").ToString();
            _url = apiResponse.SelectToken("url").ToString();

            _resolutions = new ResolutionsData(apiResponse.SelectToken("resolutions").SelectToken("medium").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("mobile").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("high").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("low").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("chunked").ToString());
            _channel = new ChannelData(apiResponse.SelectToken("channel").SelectToken("name").ToString(),
                apiResponse.SelectToken("channel").SelectToken("display_name").ToString());
        }
Ejemplo n.º 5
0
        public static string GetFilenameProgram(ChannelData myChannel, Program myProgram, Record myRecord, string myTarget, string myDuration, string myProgramPrefix)
        {
            string message  = "";
            string filename = "";

            if (myChannel == null)
            {
                message = "一致するチャンネル「" + myProgram.ChannelId + "」が存在しません";
            }

            if (myProgram == null)
            {
                message = message + "、一致する番組「" + myRecord.ProgramId + "」が存在しません";
            }

            if (message.Length > 0)
            {
                return(message);
            }
            else
            {
                string name = (myProgram.AbbreviationName.Length > 0) ? myProgram.AbbreviationName : myProgram.Name;

                // [LIVE]{20070929}スーパーライブ 中島美嘉([H0001 89m59s])
                // [番組]{20070504}ダウンタウンDX - 相田翔子、乙葉、要潤、島田洋七、的場浩司([H0001 45m59s])
                // [番組]AKB 0じ59ふん{20080707}#本物を的チューせよ(本物のヤンキーを当てろ)#([H221101 18m43s])
                // [番組]HEY!HEY!HEY!{20080526}大塚愛、BoA、鈴木雅之、菊池桃子、ET-KING([H212101 33m23s])
                filename = "[" + myProgramPrefix + "] " + name + "{" + myRecord.OnAirDate.ToString("yyyyMMdd") + "}" + " " + myRecord.Detail + "(" + "[" + myChannel.RipId + " " + FilenameGenerate.GetDuration(myDuration) + "])";
            }

            return(filename);
        }
Ejemplo n.º 6
0
        private async Task HandleTypingAsync(SocketUser User, ISocketMessageChannel Channel)
        {
            var dbCon = DBConnection.Instance();

            dbCon.DatabaseName = BotConfig.Load().DatabaseName;
            if (dbCon.IsConnect())
            {
                ulong GuildId        = (Channel as IGuildChannel).GuildId;
                var   global_channel = await Message.GetGlobalChannelInUseAsync(GuildId, Channel.Id, dbCon);

                if (!global_channel.Equals(""))
                {
                    if (!ChannelData.GetTypingState(global_channel))
                    {
                        ChannelData.UpdateTypingState(global_channel, true);
                        await Message.TriggerTypingAsync(Channel.Id, global_channel, dbCon);

                        var CancelType = Task.Run(async() =>
                        {
                            await Task.Delay(10000);
                            ChannelData.UpdateTypingState(global_channel, false);
                        });
                    }
                }

                dbCon.Close();
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        ///   The most popular in that channel. Video's do not include related data.
        /// </summary>
        public async Task <ICollection <ChannelVideoListItem> > VideosInChannel(ChannelData c, DateTime publishedAfter,
                                                                                DateTime?publishBefore = null)
        {
            var s = YtService.Search.List("snippet");

            s.ChannelId       = c.Id;
            s.PublishedAfter  = publishedAfter;
            s.PublishedBefore = publishBefore;
            s.MaxResults      = 50;
            s.Order           = SearchResource.ListRequest.OrderEnum.Date;
            s.Type            = "video";

            var vids = new List <ChannelVideoListItem>();

            while (true)
            {
                var res = await GetResponse(s);

                vids.AddRange(res.Items.Where(v => v.Snippet.PublishedAt != null).Select(v => new ChannelVideoListItem {
                    VideoId     = v.Id.VideoId,
                    VideoTitle  = v.Snippet.Title,
                    PublishedAt = (DateTime)v.Snippet.PublishedAt,
                    Updated     = DateTime.UtcNow
                }));
                if (res.NextPageToken == null)
                {
                    break;
                }
                s.PageToken = res.NextPageToken;
            }

            return(vids);
        }
Ejemplo n.º 8
0
        public ChannelsPage(PageStorage <ChannelsData> channelsData) : base("div")
        {
            _channelsData = channelsData;

            Row row = new Row();

            AppendChild(row);

            Button addChannel = new Button(asOutline: true, size: Button.ButtonSize.Small);

            addChannel.Click += (sender, args) =>
            {
                ChannelData channelData = ChannelData.CreateNew((channelsData.StorageData.Channels.Count > 0 ? channelsData.StorageData.Channels.Max(data => data.ChannelId) : 0) + 1);
                channelsData.StorageData.Channels.Add(channelData);
                AddChannel(channelData.Name, channelData, false);
            };
            addChannel.Text = "Neuen Kanal hinzufügen";
            addChannel.AddStyling(StylingOption.MarginTop, 2);

            AddChannel("Master", channelsData.StorageData.MasterChannel, true);

            foreach (ChannelData channel in channelsData.StorageData.Channels)
            {
                AddChannel(channel.Name, channel, false);
                ApplyName(channel);
            }

            AppendChild(_pillNavigation);
            AppendChild(addChannel);
        }
Ejemplo n.º 9
0
        public async Task <IActionResult> PutChannelData(int?id, ChannelData channelData)
        {
            Channel toChange = new Channel {
                ChannelName = channelData.ChannelName, ID = (int)id
            };

            if (id != toChange.ID)
            {
                return(BadRequest());
            }

            _context.Entry(toChange).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ChannelDataExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Ejemplo n.º 10
0
        public async Task AnnounceAsync([Remainder] string Announcement = null)
        {
            if (Announcement != null && Announcement.Length > 0)
            {
                var dbCon = DBConnection.Instance();
                dbCon.DatabaseName = BotConfig.Load().DatabaseName;
                if (dbCon.IsConnect())
                {
                    if (UserProfile.CanAdministrate(Context.User.Id, dbCon))
                    {
                        await Context.Message.DeleteAsync();

                        GlobalChannel GeneralChannel = ChannelData.FindChannelById("general");
                        if (GeneralChannel != null)
                        {
                            var embed = new EmbedBuilder()
                            {
                                Color = new Color()
                            };
                            embed.WithTitle("Global Announcement");
                            embed.WithDescription(Announcement);
                            embed.WithFooter("Global announcement by " + Context.User.Username + " at " + DateTime.UtcNow.ToShortTimeString());
                            await Message.PostGlobalAnnouncementAsync(embed, GeneralChannel, dbCon);
                        }
                        else
                        {
                            var Message = await Context.Channel.SendMessageAsync("Announcement failed. General chat could not be found?");

                            await Delete.DeleteMessage(Message);
                        }
                    }
                    dbCon.Close();
                }
            }
        }
    public ChannelData ToSerialization()
    {
        var data = new ChannelData();

        data.Name = Name;
        data.txTimeForSerialization = TxTime.HasValue ? TxTime.Value.ToString("o") : null;
    }
Ejemplo n.º 12
0
        private void RefreshWave(ChannelData data)
        {
            if (data == null || data.Samples == null || data.Samples.Length == 0)
            {
                bmp = null;
                return;
            }
            bmp = new Bitmap(1200, 800);
            Graphics g = Graphics.FromImage(bmp);

            g.Clear(Color.LightSteelBlue);

            float x = 0;
            float y = bmp.Height / 2;
            float prevX, prevY;
            int   delta = (data.Samples.Length / bmp.Width) / 20;

            if (delta <= 0)
            {
                delta = 1;
            }

            for (int i = 0; i < data.Samples.Length; i += delta)
            {
                prevX = x;
                prevY = y;
                y     = ((float)Math.Abs(data.Samples[i] - data.RefValue)) * bmp.Height / (2 * data.RefValue);
                x     = ((float)bmp.Width) / data.Samples.Length * i;
                g.DrawLine(Pens.DarkBlue, new PointF(prevX, prevY), new PointF(x, y));
            }
        }
Ejemplo n.º 13
0
        private void processChannel(ChannelData channel, float[] buffer, int count)
        {
            //TODO unsafe implementation

            for (int i = 0; i < count; i++)
            {
                var sample = buffer[i];
                channel.DelayBuffer[channel.Position] = sample;

                var delay = (channel.LfoBuffer[i] + 1f) * (maximumDelaySamples / 2f);

                float delaySample;

                var delayPosition = channel.Position - (int)delay;

                delayPosition += bufferLength;
                delayPosition %= bufferLength;

                delaySample = (float)(channel.DelayBuffer[delayPosition]);

                buffer[i] = (sample * dry + delaySample * wet);

                channel.Position += 1;
                channel.Position %= bufferLength;
            }

            channel.Time += count;
        }
Ejemplo n.º 14
0
        public static void SetupChannel(ChannelData channelData)
        {
            List <string> removedGuids = new List <string>();

            using (DatabaseObjectStorageEntryUsable <AutomaticJobStore> automaticJobStoreWrapper = DatabaseObjectStorageEntryUsable <AutomaticJobStore> .GetData(() => new AutomaticJobStore()))
            {
                AutomaticJobStore automaticJobStore = automaticJobStoreWrapper.Data;
                if (automaticJobStore.ChannelProgramDictionary.ContainsKey(channelData.ChannelId) == false)
                {
                    automaticJobStore.ChannelProgramDictionary.Add(channelData.ChannelId, new List <string>());
                }

                // alle einträge von automaticJobStore.ChannelProgramDictionary[channelData.ChannelId] wo kein !gültiger! Eintrag in channelData.ProgramList enthalten ist
                foreach (string removedGuid in automaticJobStore.ChannelProgramDictionary[channelData.ChannelId].Where(s => channelData.ProgramList.Any(data => data.Guid == s && IsInvalid(data) == false) == false))
                {
                    RecurringJob.RemoveIfExists(removedGuid);
                    removedGuids.Add(removedGuid);
                }
                foreach (string removedGuid in removedGuids)
                {
                    automaticJobStore.ChannelProgramDictionary[channelData.ChannelId].Remove(removedGuid);
                }

                foreach (ChannelProgramData channelProgramData in channelData.ProgramList.Where(data => IsInvalid(data) == false))
                {
                    AutomaticJobContext automaticJobContext = new AutomaticJobContext(channelProgramData, channelData);
                    RecurringJob.AddOrUpdate(automaticJobContext.ChannelProgramData.Guid, () => ExecuteScheduledJob(automaticJobContext), GetExecutionCron(automaticJobContext), TimeZoneInfo.Local);
                    if (automaticJobStore.ChannelProgramDictionary[channelData.ChannelId].Contains(automaticJobContext.ChannelProgramData.Guid) == false)
                    {
                        // new Entry was added
                        automaticJobStore.ChannelProgramDictionary[channelData.ChannelId].Add(automaticJobContext.ChannelProgramData.Guid);
                    }
                }
            }
        }
Ejemplo n.º 15
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        private ChannelData GetPreferredSignal(IEnumerable <ChannelData> ecg_data, IEnumerable <ChannelData> ppg_data)
        {
            ChannelData physio_data = null;

            // Если есть ФПГ-сигнал, используем его.
            if (ppg_data.Any())
            {
                // Обрабатываем ФПГ
                physio_data = ppg_data.First();

                // Можно включить экспорт сигнала при необходимости
                ExportPhysioData(physio_data, @"c:\SourceSignal.txt");
            }

            // Если есть ЭКГ-сигнал, используем его.
            // (Переопределяем использование ФПГ, считая, что ЭКГ сигнал более важен.)
            if (ecg_data.Any())
            {
                // Обрабатываем только ЭКГ
                physio_data = ecg_data.First();
                //System.Diagnostics.Debug(ecg_data.m_channelName);
                // Можно включить экспорт сигнала при необходимости
                ExportPhysioData(physio_data, @"c:\ch.8.txt.TxtChannel.txt");
            }

            if (null != physio_data)
            {
                HrvResults.SignalType = physio_data.PhysioSignalType;
            }

            return(physio_data);
        }
Ejemplo n.º 16
0
        /// <summary>
        /// Возвращает фрагмент сигнала, соответствующий периоду первого стимула;
        /// по возможности сглаженный со стабилизированной амплитудой,
        /// </summary>
        /// <param name="ismid"></param>
        /// <param name="all_data">data package to which returned channel data belongs</param>
        /// <param name="begin_mark">beginning of the relevant signal</param>
        /// <param name="end_mark">end of the relevant signal in the returned signal's buffer</param>
        /// <returns></returns>
        private ChannelData GetSignal(
            HrvRawData ismid,
            ref PatientPhysioData all_data,
            ref long begin_mark,
            ref long end_mark)
        {
            var data = ismid.PhysioData;

            // and we must have at least some physio data
            System.Diagnostics.Debug.Assert(data != null);

            all_data = data;

            ChannelData result = null;

            // first, we take all the data
            var ecg_data = data.GetChannelDataBySignalType(SignalType.ECG);
            var ppg_data = data.GetChannelDataBySignalType(SignalType.PPG);

            // select appropriate signal using 'a priori' information about priority of signal types
            result = GetPreferredSignal(ecg_data, ppg_data);

            if (result == null)
            {
                return(null);
            }

            begin_mark = ismid.PhSyncBegin;
            end_mark   = ismid.PhSyncEnd;

            // Возвращаем результат
            return(result);
        }
Ejemplo n.º 17
0
        private void FilterSignal(ChannelData data)
        {
            if (data != null)
            {
                // Is it ECG signal?
                if (data.PhysioSignalType == SignalType.ECG)
                {
                    // Yes, this is ECG. Use ECG auto denoiser.
                    int[] buffer = data.Data;

                    EcgWaveletAutoDenoiser denoiser = new EcgWaveletAutoDenoiser();
                    denoiser.FilterDestructive(buffer);
                }
                else if (data.PhysioSignalType == SignalType.PPG)
                {
                    // well, this is PPG signal
                    if (true)
                    {
                        int[] buffer = data.Data;

                        var denoiser = new PpgDenoiser(data.SamplingRate);
                        denoiser.FilterInPlace(buffer);
                    }
                }
                else
                {
                    // this is neither ECG, nor PPG, don't know how to filter it properly
                }
            }
        }
        /// <summary>
        /// Encode the message in base64 and send it throught the cloud
        /// </summary>
        /// <param name="asset">An asset identifier to send the message to</param>
        /// <param name="channel">Channel identifier</param>
        /// <param name="message">Content message (will be automaticly encoded in base64, no need to encode yourself)</param>
        /// <param name="timeout">if -1 never timeout else the delay in minutes before the message is considered invalid (will not be sent)</param>
        /// <returns>
        /// 0  : message send
        /// -1 : channel does not exist
        /// </returns>
        public int PostMessage(string asset, string channel, string message, int timeout = -1)
        {
            ChannelData chan = this.Cloud.Channel.Get(channel);

            if (chan == null)
            {
                return(1);
            }
            else
            {
                string encodedMsg = MD.CloudConnect.Tools.Base64Encoder.GetEncodedValue(message);
                string jsonParam  = "";

                jsonParam += "{ \"asset\": \"" + asset + "\"";
                jsonParam += ", \"channel\": \"" + channel + "\"";
                jsonParam += ", \"b64_payload\": \"" + encodedMsg + "\"";

                if (timeout > 0)
                {
                    jsonParam += ", \"timeout\": \"" + timeout.ToString() + "\"";
                }

                jsonParam += "}";

                this.Post(jsonParam);
            }
            return(0);
        }
Ejemplo n.º 19
0
        public void TwoChannelPassThroughReordered()
        {
            var configs = new List <ChannelAdjusterConfig>
            {
                new ChannelAdjusterConfig("ChannelTwo", 0, 0, 0, FilterOption.PassThrough),
                new ChannelAdjusterConfig("ChannelOne", 0, 0, 0, FilterOption.PassThrough),
            };

            var ca = Sys.ActorOf(Props.Create(() => new ChannelAdjuster(configs, TestActor)));

            var firstData = new ChannelData <float>
                            (
                new List <DataChannel <float> >
            {
                new DataChannel <float>("ChannelOne", 1, Unit.Metres),
                new DataChannel <float>("ChannelTwo", 2, Unit.Metres)
            },
                new List <DataChannel <bool> >(),
                0, 0, 0, false, 0
                            );

            ca.Tell(firstData);

            var result = ExpectMsg <ChannelData <float> >(TimeSpan.FromSeconds(3));

            result.Analogs.Should().HaveCount(2);
            result.Digitals.Should().HaveCount(0);
            result.Analogs.Select(x => x.Name).Should().BeEquivalentTo(new [] { "ChannelTwo", "ChannelOne" });
        }
Ejemplo n.º 20
0
        private void OnFileGenerateExecute(object sender, RoutedEventArgs e)
        {
            Button btn = sender as Button;

            Record  record  = (Record)dgridTvRecord.SelectedItem;
            Program program = null;

            if (record.ProgramId.Length > 0)
            {
                program = programs.GetById(record.ProgramId);
            }

            if (program == null)
            {
                txtStatusBar.Text = "対象の番組が見つかりません";
                return;
            }

            ChannelData channel = channels.GetByChannel(program.GetChannel());

            if (btn.Content.Equals("P生成"))
            {
                txtStatusBar.Text = FilenameGenerate.GetFilenameProgram(channel, program, record, txtFileGenTargetName.Text, txtFileGenDuration.Text, txtFileGenProgramPrefix.Text);
            }
            else
            {
                txtStatusBar.Text = FilenameGenerate.GetFilename(channel, program, record, txtFileGenTargetName.Text, txtFileGenDuration.Text, txtFileGenPath.Text, txtFileGenExtension.Text);
            }
        }
        public void TestChannelCreateRetry()
        {
            var expected = new ChannelData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 2, expected);

            dataContextMock.Setup(ctxt => ctxt.AddObject("Channels", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            try
            {
                _mediaContext.Channels.Create(
                    new ChannelCreationOptions
                    {
                        Name = "unittest",
                        Input = MakeChannelInput(),
                        Preview = MakeChannelPreview(),
                        Output = MakeChannelOutput()
                    });
            }
            catch (NotImplementedException x)
            {
                Assert.AreEqual(TestMediaDataServiceResponse.TestMediaDataServiceResponseExceptionMessage, x.Message);
            }

            dataContextMock.Verify(ctxt => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.Exactly(2));
        }
Ejemplo n.º 22
0
        public async Task <string> GetFlowWorksData(int stationId)
        {
            var url = this._config["flowWorksApiUrl"] + this._config["FlowWorksApiKey"] + "/site/" + stationId;

            SiteChannels siteChannels = await GetResultAsync <SiteChannels>(url);

            var filterChannels = _config.GetSection("channels").Get <List <string> >();

            List <Channel> channels = siteChannels.sites[0].channels.Where(s => filterChannels.Contains(s.name)).ToList <Channel>();

            List <List <string> > tempChannelData = new List <List <string> >();

            foreach (Channel channel in channels)
            {
                url = this._config["flowWorksApiUrl"] + this._config["flowWorksApiKey"] + "/site/" + stationId + "/channel/" + channel.id + "/data/intervaltype/D/intervalnum/1";
                ChannelData tempData = await GetResultAsync <ChannelData>(url);

                if (tempData.datapoints.Count > 0)
                {
                    tempChannelData.Add(new List <string>
                    {
                        channel.name
                        , tempData.datapoints.OrderByDescending(d => d.date).FirstOrDefault().value.ToString() + " " + channel.unit + ", "
                        + (tempData.datapoints.OrderByDescending(d => d.date).FirstOrDefault().date.DayOfYear == DateTime.Today.DayOfYear ? "today @ " + tempData.datapoints.OrderByDescending(d => d.date).FirstOrDefault().date.ToShortTimeString() :
                           "yesterday @ " + tempData.datapoints.OrderByDescending(d => d.date).FirstOrDefault().date.ToShortTimeString())
                    });
                }
            }

            return(JsonConvert.SerializeObject(tempChannelData));
        }
        public void TestChannelCreateFailedRetry()
        {
            var expected = new ChannelData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 10, expected);

            dataContextMock.Setup(ctxt => ctxt.AddObject("Channels", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            try
            {
                _mediaContext.Channels.Create(
                    new ChannelCreationOptions
                    {
                        Name = "unittest",
                        Input = MakeChannelInput(),
                        Preview = MakeChannelPreview(),
                        Output = MakeChannelOutput()
                    });
            }
            catch (WebException x)
            {
                dataContextMock.Verify(ctxt => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.AtLeast(3));
                Assert.AreEqual(fakeException, x);
                throw;
            }

            Assert.Fail("Expected exception");
        }
Ejemplo n.º 24
0
        public void Channel(IWorkbook myWorkbook)
        {
            ISheet worksheet = myWorkbook.GetSheet("CHANNEL");
            int    lastRow   = worksheet.LastRowNum;

            Debug.Print(myWorkbook.NumberOfSheets.ToString());
            Debug.Print("lastRow " + lastRow);

            for (int i = 1; i <= lastRow; i++)
            {
                IRow row = worksheet.GetRow(i);

                ChannelData channel = new ChannelData();
                channel.Channel       = Convert.ToInt32(GetStringCellData(CellNameV1.DiskNo, row?.GetCell((int)CellNameChannel.Channel)));
                channel.Name          = GetStringCellData(CellNameChannel.Name, row?.GetCell((int)CellNameChannel.Name));
                channel.BroadcastKind = GetStringCellData(CellNameChannel.BroadcastKind, row?.GetCell((int)CellNameChannel.BroadcastKind));
                channel.RipId         = GetStringCellData(CellNameChannel.RipId, row?.GetCell((int)CellNameChannel.RipId));
                channel.VideoRate     = GetStringCellData(CellNameChannel.VideoRate, row?.GetCell((int)CellNameChannel.VideoRate));
                channel.VoiceRate     = GetStringCellData(CellNameChannel.VoiceRate, row?.GetCell((int)CellNameChannel.VoiceRate));
                channel.Remark        = GetStringCellData(CellNameChannel.Remark, row?.GetCell((int)CellNameChannel.Remark));

                DbExport(channel, new DbConnection());

                //Debug.Print(i + "  " + channel.Channel + "  Name:" + channel.Name + " Kind:" + channel.BroadcastKind + "  RipId:" + channel.RipId + "  VideoRate:" + channel.VideoRate + "  VoiceRate:" + channel.VoiceRate);
                //Debug.Print("    Remark:" + channel.Remark);
            }
        }
Ejemplo n.º 25
0
        public static ChannelData GetChannelData(this ITurnContext context)
        {
            ChannelData channelData = null;

            context.Activity.TryGetChannelData(out channelData);
            return(channelData);
        }
Ejemplo n.º 26
0
 public ChannelData(ChannelData other) : this(msclPINVOKE.new_ChannelData__SWIG_1(ChannelData.getCPtr(other)), true)
 {
     if (msclPINVOKE.SWIGPendingException.Pending)
     {
         throw msclPINVOKE.SWIGPendingException.Retrieve();
     }
 }
        public void ChannelSettingsTest()
        {
            IChannel target = new ChannelData();

            var input = MakeChannelInput();
            target.Input = input;

            Assert.AreEqual(input.KeyFrameInterval, target.Input.KeyFrameInterval);
            Assert.AreEqual(input.StreamingProtocol, target.Input.StreamingProtocol);
            Assert.AreEqual(input.AccessControl.IPAllowList[0].Name, target.Input.AccessControl.IPAllowList[0].Name);
            Assert.AreEqual(input.AccessControl.IPAllowList[0].SubnetPrefixLength, target.Input.AccessControl.IPAllowList[0].SubnetPrefixLength);

            var preview = MakeChannelPreview();
            target.Preview = preview;

            Assert.AreEqual(preview.AccessControl.IPAllowList[0].Name, target.Preview.AccessControl.IPAllowList[0].Name);
            Assert.AreEqual(preview.AccessControl.IPAllowList[0].SubnetPrefixLength, target.Preview.AccessControl.IPAllowList[0].SubnetPrefixLength);

            var output = MakeChannelOutput();
            target.Output = output;

            Assert.AreEqual(output.Hls.FragmentsPerSegment, target.Output.Hls.FragmentsPerSegment);

            var encoding = MakeChannelEncoding();
            target.Encoding = encoding;

            Assert.AreEqual(encoding.SystemPreset, target.Encoding.SystemPreset);
            Assert.AreEqual(encoding.AudioStreams[0].Index, target.Encoding.AudioStreams[0].Index);
            Assert.AreEqual(encoding.AudioStreams[0].Language, target.Encoding.AudioStreams[0].Language);
            Assert.AreEqual(encoding.VideoStreams[0].Index, target.Encoding.VideoStreams[0].Index);
            Assert.AreEqual(encoding.IgnoreCea708ClosedCaptions, target.Encoding.IgnoreCea708ClosedCaptions);
            Assert.AreEqual(encoding.AdMarkerSource, target.Encoding.AdMarkerSource);
        }
Ejemplo n.º 28
0
        private void AddChannel(string channelName, ChannelData channel, bool isMasterChannel)
        {
            Anchor pill = _pillNavigation.AddPill(channelName, new ChannelPage(channel, this, isMasterChannel), _hasActivePill == false);

            _pillDictionary.Add(channel, pill);
            _hasActivePill = true;
        }
Ejemplo n.º 29
0
        /// <summary>
        /// Shows the detail.
        /// </summary>
        /// <param name="communication">The communication.</param>
        private void ShowDetail(Rock.Model.Communication communication)
        {
            CommunicationId = communication.Id;

            pnlStatus.Visible = communication.Status != CommunicationStatus.Transient;
            lStatus.Text      = string.Format("Communication Status: {0}", communication.Status.ConvertToString());

            ChannelEntityTypeId = communication.ChannelEntityTypeId;
            BindChannels();

            Recipients.Clear();
            communication.Recipients.ToList().ForEach(r => Recipients.Add(new Recipient(r.Person.Id, r.Person.FullName, r.Status)));
            BindRecipients();

            ChannelData = communication.ChannelData;
            ChannelData.Add("Subject", communication.Subject);

            ChannelControl control = LoadChannelControl(true);

            if (control != null && CurrentPerson != null)
            {
                control.InitializeFromSender(CurrentPerson);
            }

            dtpFutureSend.SelectedDateTime = communication.FutureSendDateTime;

            ShowActions(communication);
        }
Ejemplo n.º 30
0
        private async Task ReadyAsync()
        {
            ChannelData.PopulateChannels();
            await GlobalMessages.ClearData();

            await UpdateStatus();
        }
Ejemplo n.º 31
0
        private VICycleDataGroup GetCycleData(AdoDataConnection connection, int eventID)
        {
            TableOperations <Event> eventTable = new TableOperations <Event>(connection);
            Event evt = eventTable.QueryRecordWhere("ID = {0}", eventID);

            if ((object)evt == null)
            {
                return(null);
            }

            List <byte[]> timeDomainData = ChannelData.DataFromEvent(eventID, connection);


            TableOperations <Meter> meterTable = new TableOperations <Meter>(connection);
            Meter meter = meterTable.QueryRecordWhere("ID = {0}", evt.MeterID);

            if ((object)meter == null)
            {
                return(null);
            }

            meter.ConnectionFactory = () => new AdoDataConnection(connection.Connection, connection.AdapterType, false);

            DataGroup dataGroup = new DataGroup();

            dataGroup.FromData(meter, timeDomainData);
            return(Transform.ToVICycleDataGroup(new VIDataGroup(dataGroup), SystemFrequency));
        }
Ejemplo n.º 32
0
 public ChannelDataEnumerator(ChannelData collection)
 {
     collectionRef = collection;
     currentIndex  = -1;
     currentObject = null;
     currentSize   = collectionRef.Count;
 }
Ejemplo n.º 33
0
            public static ChannelData <Type> Empty()
            {
                var channel = new ChannelData <Type>();

                channel.KeyFrames = null;
                return(channel);
            }
Ejemplo n.º 34
0
        public async Task <ChannelData> ChannelData(string id)
        {
            var s = YtService.Channels.List("snippet,statistics");

            s.Id = id;
            var r = await GetResponse(s);

            var c = r.Items.FirstOrDefault();

            if (c == null)
            {
                return new ChannelData {
                           Id = id, Title = "N/A"
                }
            }
            ;

            var data = new ChannelData {
                Id          = id,
                Title       = c.Snippet.Title,
                Description = c.Snippet.Description,
                Country     = c.Snippet.Country,
                Thumbnails  = c.Snippet.Thumbnails,
                Stats       = new ChannelStats {
                    ViewCount = c.Statistics.ViewCount,
                    SubCount  = c.Statistics.SubscriberCount,
                    Updated   = DateTime.UtcNow
                }
            };

            return(data);
        }

        #endregion
    }
Ejemplo n.º 35
0
        /// <summary>
        /// Video constructor
        /// </summary>
        /// <param name="apiResponse">API response string from Twitch call.</param>
        public Video(JToken apiResponse)
        {
            int length = -1;
            int views = -1;
            int audioFps = -1;
            double mediumFps = -1;
            double mobileFps = -1;
            double highFps = -1;
            double lowFps = -1;
            double chunkedFps = -1;

            if (int.TryParse(apiResponse.SelectToken("length").ToString(), out length)) Length = length;
            if (int.TryParse(apiResponse.SelectToken("views").ToString(), out views)) Views = views;

            if(apiResponse.SelectToken("fps").SelectToken("audio_only") != null)
                int.TryParse(apiResponse.SelectToken("fps").SelectToken("audio_only").ToString(), out audioFps);
            if(apiResponse.SelectToken("fps").SelectToken("medium") != null)
                double.TryParse(apiResponse.SelectToken("fps").SelectToken("medium").ToString(), out mediumFps);
            if(apiResponse.SelectToken("fps").SelectToken("mobile") != null)
                double.TryParse(apiResponse.SelectToken("fps").SelectToken("mobile").ToString(), out mobileFps);
            if(apiResponse.SelectToken("fps").SelectToken("high") != null)
                double.TryParse(apiResponse.SelectToken("fps").SelectToken("high").ToString(), out highFps);
            if(apiResponse.SelectToken("fps").SelectToken("low") != null)
                double.TryParse(apiResponse.SelectToken("fps").SelectToken("low").ToString(), out lowFps);
            if(apiResponse.SelectToken("fps").SelectToken("chunked") != null)
                double.TryParse(apiResponse.SelectToken("fps").SelectToken("chunked").ToString(), out chunkedFps);

            BroadcastId = apiResponse.SelectToken("broadcast_id").ToString();
            Description = apiResponse.SelectToken("description").ToString();
            Fps = new FpsData(audioFps, mediumFps, mobileFps, highFps, lowFps, chunkedFps);
            Game = apiResponse.SelectToken("game").ToString();
            Id = apiResponse.SelectToken("_id").ToString();
            Preview = apiResponse.SelectToken("preview").ToString();
            RecordedAt = Common.DateTimeStringToObject(apiResponse.SelectToken("recorded_at").ToString());
            TimeSinceRecorded = DateTime.UtcNow - RecordedAt;
            Status = apiResponse.SelectToken("status").ToString();
            TagList = apiResponse.SelectToken("tag_list").ToString();
            Title = apiResponse.SelectToken("title").ToString();
            Url = apiResponse.SelectToken("url").ToString();

            Resolutions = new ResolutionsData(apiResponse.SelectToken("resolutions").SelectToken("medium").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("mobile").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("high").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("low").ToString(),
                apiResponse.SelectToken("resolutions").SelectToken("chunked").ToString());
            Channel = new ChannelData(apiResponse.SelectToken("channel").SelectToken("name").ToString(),
                apiResponse.SelectToken("channel").SelectToken("display_name").ToString());
        }
        public void SettingsTestChannelSubProperties()
        {
            IChannel target = new ChannelData();

            var input = new ChannelInput
            {
                 AccessControl = new ChannelAccessControl
                 {
                     IPAllowList = new List<IPRange> {new IPRange {Address = IPAddress.Parse("192.168.0.1/24"), SubnetPrefixLength = 24} }
                 }
            };

            target.Input = input;

            Assert.IsNotNull(target.Input.AccessControl.IPAllowList.FirstOrDefault());
        }
        public void LiveEncodingUrlTest()
        {
            IChannel target = new ChannelData
            {
                Id = Guid.NewGuid().ToString(),
            };

            target.Input = MakeChannelInput();
            target.Preview = MakeChannelPreview();
            target.Output = MakeChannelOutput();
            target.Encoding = MakeChannelEncoding();

            target.ShowSlateAsync(TimeSpan.FromMinutes(5), Guid.NewGuid().ToString());
            target.HideSlateAsync();
            target.StartAdvertisementAsync(TimeSpan.FromMinutes(10), 100, false);
            target.EndAdvertisementAsync(100);
        }
        public void TestProgramCreateRetryAsyn()
        {
            var expected = new ProgramData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 2, expected);

            dataContextMock.Setup((ctxt) => ctxt.AddObject("Channels", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            IChannel channel = new ChannelData();
            ProgramBaseCollection programs = new ProgramBaseCollection(_mediaContext, channel);

            var actual = programs.Create(expected.Name, TimeSpan.FromHours(1), Guid.NewGuid().ToString());

            Assert.AreEqual(expected.Name, actual.Name);

            dataContextMock.Verify((ctxt) => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.Exactly(2));
        }
Ejemplo n.º 39
0
        public void LoadFromFile(string filename)
        {
            var deserializer = new XmlSerializer(typeof(LMS.sequence));

            LMS.sequence sequence;
            using (TextReader textReader = new StreamReader(filename))
            {
                sequence = (LMS.sequence)deserializer.Deserialize(textReader);
            }

            foreach (var channel in sequence.channels)
            {
                if (channel.deviceType != null && channel.deviceType != "LOR")
                {
                    log.Warn("Not supporting device type {0} yet", channel.deviceType);
                    continue;
                }

                if (channel.unit == 0 && channel.circuit == 0)
                    continue;

                var channelIdentity = new UnitCircuit(channel.unit, channel.circuit, channel.savedIndex);
                var channelData = new ChannelData(channel.name);

                AddChannelData(channelIdentity, channelData);

                var channelEffects = new List<ChannelEffect>();
                if (channel.effect != null)
                {
                    foreach (var effect in channel.effect)
                    {
                        channelData.HasEffects = true;

                        channelEffects.AddRange(GetChannelEffects(effect));
                    }
                }

                channelEffectsPerChannel[channelIdentity] = channelEffects;
            }
        }
Ejemplo n.º 40
0
        private unsafe void processUnsafe(ChannelData channel, float[] buffer, int count)
        {
            var coefficientsLength = this.coefficients.Length;

            var inputHistoryLength = channel.InputHistory.Length;
            var position = channel.Position;

            fixed (float* fixedBuffer = buffer,
                fixedInputHistory = channel.InputHistory,
                fixedCoefficients = coefficients)
            {
                float* pBuffer = fixedBuffer;
                float* pInputHistory = fixedInputHistory + position;

                for (int i = 0; i < count; i++)
                {
                    *pInputHistory = *pBuffer;

                    float sample = 0f;

                    float* ph = pInputHistory;
                    float* pCoefficients = fixedCoefficients;
                    for (int j = 0; j < coefficientsLength; j++)
                    {
                        sample += *ph * *(pCoefficients++);

                        if (--ph < fixedInputHistory)
                        {
                            ph += inputHistoryLength;
                        }
                    }
                    *(pBuffer++) = sample;

                    position++;
                    pInputHistory++;
                    if (position >= inputHistoryLength)
                    {
                        position = 0;
                        pInputHistory = fixedInputHistory;
                    }
                }
            }

            channel.Position = position;
        }
Ejemplo n.º 41
0
        private void processSafe(ChannelData channel, float[] buffer, int count)
        {
            var inputHistoryLength = channel.InputHistory.Length;

            for (var i = 0; i < count; i++)
            {
                channel.InputHistory[channel.Position] = buffer[i];

                float sample = 0f;
                int index = channel.Position + inputHistoryLength;
                for (var j = 0; j < Coefficients.Length; j++)
                {
                    sample += channel.InputHistory[index % inputHistoryLength] * Coefficients[j];
                }
                buffer[i] = sample;

                channel.Position += 1;
                channel.Position %= inputHistoryLength;
            }
        }
Ejemplo n.º 42
0
        private void processMatrix(ChannelData channel, float[] buffer, int count)
        {
            var c = coefficients.Length;
            var src = 1 - c;
            var dst = 0;
            var offset = c - 1;

            matrix = BufferHelpers.Ensure(matrix, count * c);
            history = BufferHelpers.Ensure(history, c);
            channel.InputHistory = BufferHelpers.Ensure(channel.InputHistory, c);

            Buffer.BlockCopy(channel.InputHistory, 0, history, 0, sizeof(float) * c);

            for (int i = 0; i < count; i++)
            {
                Buffer.BlockCopy(
                    buffer,
                    sizeof(float) * (src + offset),
                    matrix,
                    sizeof(float) * (dst + offset),
                    sizeof(float) * (c - offset));

                if (offset > 0)
                {
                    Buffer.BlockCopy(
                        history,
                        sizeof(float) * (c - offset),
                        matrix,
                        sizeof(float) * dst,
                        sizeof(float) * offset);

                    offset -= 1;
                }

                src += 1;
                dst += c;
            }

            Buffer.BlockCopy(buffer, sizeof(float) * (count - c), channel.InputHistory, 0, sizeof(float) * c);

            var X = new DenseMatrix(coefficients.Length, count, matrix);

            var B = new DenseMatrix(1, count, buffer);
            C.Multiply(X, B);
        }
Ejemplo n.º 43
0
        internal void SetData(DataSourceType type, Channel ch, Array arr, bool partial = false)
        {
            lock (dataLock)
            {
                if (arr.GetType().GetElementType() != ChannelDataTypes[ch.GetType()])
                    throw new Exception("Invalid data type " + arr.GetType().GetElementType().ToString() + " for channel of type " + ch.GetType().ToString());

                data[type][ch] = new ChannelData(type, ch, arr, partial, samplePeriod[type], offset[type]);
            }
        }
Ejemplo n.º 44
0
        private void calculateTransform(ChannelData channel)
        {
            for (int i = 0; i < transformLength; i++)
            {
                channel.Complex[i] = new Complex
                {
                    X = channel.InputHistory[i] * window[i],
                    Y = 0f
                };
            }

            transformProvider.FFT(true, m, channel.Complex);

            var e = new FourierTransformEventArgs(
                transformLength,
                channel.Index,
                channel.Complex);

            if (DataReady != null)
            {
                DataReady.Invoke(this, e);
            }
        }
        public void TestChannelUpdateRetry()
        {
            var data = new ChannelData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 2, data);

            dataContextMock.Setup(ctxt => ctxt.AttachTo("Channels", data));
            dataContextMock.Setup(ctxt => ctxt.UpdateObject(data));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            data.SetMediaContext(_mediaContext);

            try
            {
                data.Update();
            }
            catch (NotImplementedException x)
            {
                Assert.AreEqual(TestMediaDataServiceResponse.TestMediaDataServiceResponseExceptionMessage, x.Message);
            }

            dataContextMock.Verify(ctxt => ctxt.SaveChanges(), Times.Exactly(2));
        }
        public void TestProgramCreateRetryAsyncAndFailed()
        {
            var expected = new ProgramData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.Timeout);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 100, expected);

            dataContextMock.Setup((ctxt) => ctxt.AddObject("Channels", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            IChannel channel = new ChannelData();
            ProgramBaseCollection programs = new ProgramBaseCollection(_mediaContext, channel);

            try
            {
                var actual = programs.CreateAsync(expected.Name, TimeSpan.FromHours(1), Guid.NewGuid().ToString()).Result;

            }
            catch (AggregateException)
            {
                dataContextMock.Verify((ctxt) => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.AtLeast(2));
                throw;
            }
        }
        public void TestStreamingEndpointCreateRetry()
        {
            var expected = new ChannelData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 2, expected);

            dataContextMock.Setup((ctxt) => ctxt.AddObject("StreamingEndpoints", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            try
            {
                var actual = _mediaContext.StreamingEndpoints.Create("unittest", 0);
            }
            catch (NotImplementedException x)
            {
                Assert.AreEqual(TestMediaDataServiceResponse.TestMediaDataServiceResponseExceptionMessage, x.Message);
            }
            dataContextMock.Verify((ctxt) => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.Exactly(2));
        }
        public void TestStreamingEndpointCreateFailedRetry()
        {
            var expected = new ChannelData { Name = "testData" };
            var fakeException = new WebException("test", WebExceptionStatus.ConnectionClosed);
            var dataContextMock = TestMediaServicesClassFactory.CreateSaveChangesMock(fakeException, 10, expected);

            dataContextMock.Setup((ctxt) => ctxt.AddObject("StreamingEndpoints", It.IsAny<object>()));

            _mediaContext.MediaServicesClassFactory = new TestMediaServicesClassFactory(dataContextMock.Object);

            try
            {
                var actual = _mediaContext.StreamingEndpoints.Create("unittest", 0);
            }
            catch (WebException x)
            {
                dataContextMock.Verify((ctxt) => ctxt.SaveChangesAsync(It.IsAny<object>()), Times.AtLeast(3));
                Assert.AreEqual(fakeException, x);
                throw;
            }

            Assert.Fail("Expected exception");
        }
Ejemplo n.º 49
0
 public SetRCCalibration(ChannelData data) : base(Command.SetRCCalibration)
 {
     _data = data;
 }
Ejemplo n.º 50
0
 /// <summary>
 ///     Dummy Constructor
 /// </summary>
 public Layer3SideInfo()
 {
     Channels = new ChannelData[2];
     Channels[0] = new ChannelData();
     Channels[1] = new ChannelData();
 }
Ejemplo n.º 51
0
 private ChannelData ExtractBitsFromLogicAnalyser(DigitalChannel ch, DataSourceType t)
 {
     lock (dataLock)
     {
         //FIXME: expand for more than 1 LA
         if (!data[t].ContainsKey(LogicAnalyserChannel.LA))
             return null;
         Func<byte, bool> bitFilter = new Func<byte, bool>(x => Utils.IsBitSet(x, ch.Value));
         var laChannel = data[t][LogicAnalyserChannel.LA];
         data[t][ch] = new ChannelData(t, ch, Utils.TransformArray(laChannel.array, bitFilter), laChannel.partial, samplePeriod[t], offset[t]);
         return data[t][ch];
     }
 }
Ejemplo n.º 52
0
        private void processChannel(ChannelData channel, float[] buffer, int count)
        {
            //TODO unsafe implementation

            for (int i = 0; i < count; i++)
            {
                var sample = buffer[i];
                channel.DelayBuffer[channel.Position] = sample;

                var delay = (channel.LfoBuffer[i] + 1f) * (maximumDelaySamples / 2f);

                float delaySample;

                var delayPosition = channel.Position - (int)delay;

                delayPosition += bufferLength;
                delayPosition %= bufferLength;

                delaySample = (float)(channel.DelayBuffer[delayPosition]);

                buffer[i] = (sample * dry + delaySample * wet);

                channel.Position += 1;
                channel.Position %= bufferLength;
            }

            channel.Time += count;
        }
Ejemplo n.º 53
0
        private ChannelData _getChannelCalibrationData()
        {
            ChannelData data = new ChannelData();

            data.Role = (byte)cal1role.SelectedIndex;
            data.Role <<= 2;
            data.Role |= (byte)cal2role.SelectedIndex;
            data.Role <<= 2;
            data.Role |= (byte)cal3role.SelectedIndex;
            data.Role <<= 2;
            data.Role |= (byte)cal4role.SelectedIndex;

            data.Channel[0, 0] = (UInt16)(cal11.Value);
            data.Channel[0, 1] = (UInt16)(cal12.Value);
            data.Channel[0, 2] = (UInt16)(cal13.Value);

            data.Channel[1, 0] = (UInt16)(cal21.Value);
            data.Channel[1, 1] = (UInt16)(cal22.Value);
            data.Channel[1, 2] = (UInt16)(cal23.Value);

            data.Channel[2, 0] = (UInt16)(cal31.Value);
            data.Channel[2, 1] = (UInt16)(cal32.Value);
            data.Channel[2, 2] = (UInt16)(cal33.Value);

            data.Channel[3, 0] = (UInt16)(cal41.Value);
            data.Channel[3, 1] = (UInt16)(cal42.Value);
            data.Channel[3, 2] = (UInt16)(cal43.Value);

            data.Channel[4, 0] = (UInt16)(cal51.Value);
            data.Channel[4, 1] = (UInt16)(cal52.Value);
            data.Channel[4, 2] = (UInt16)(cal53.Value);

            data.Channel[5, 0] = (UInt16)(cal61.Value);
            data.Channel[5, 1] = (UInt16)(cal62.Value);
            data.Channel[5, 2] = (UInt16)(cal63.Value);

            data.Channel[6, 0] = (UInt16)(cal71.Value);
            data.Channel[6, 1] = (UInt16)(cal72.Value);
            data.Channel[6, 2] = (UInt16)(cal73.Value);

            data.Channel[7, 0] = (UInt16)(cal81.Value);
            data.Channel[7, 1] = (UInt16)(cal82.Value);
            data.Channel[7, 2] = (UInt16)(cal83.Value);

            return data;
        }