internal void SaveTo(FiltersSection section) { FilterCollection filterCollection = section.Filters; filterCollection.Clear(); foreach (IFilter filter in list) { Type filterType = filter.GetType(); FilterElement filterElement = new FilterElement(); filterElement.Name = filterType.Name; filterElement.Type = filterType; filterCollection.Add(filterElement); foreach (PropertyInfo propertyInfo in filterType.GetProperties()) { if (propertyInfo.Name != "LastResult") { FilterParameterElement parameter = new FilterParameterElement(); parameter.Name = propertyInfo.Name; object propertyValue = propertyInfo.GetValue(filter, null); parameter.Type = propertyValue.GetType(); TypeConverter converter = TypeDescriptor.GetConverter(propertyValue); parameter.Value = converter.ConvertToString(propertyValue); filterElement.Parameters.Add(parameter); } } } }
public PartnerListForm_MapView(PartnerListForm PartnerListForm) { InitializeComponent(); Title = "نقشه"; _NearbyCustomers_DistanceSlider.Minimum = 0; _NearbyCustomers_DistanceSlider.Maximum = 100; _NearbyCustomers_DistanceSlider.Value = 0.000324684131; _NearbyCustomers_DistanceSlider.ValueChanged += (sender, e) => { if (Math.Abs(PartnerListForm.NearbyCustomers_DistanceSlider - _NearbyCustomers_DistanceSlider.Value) >= 0.5) { PartnerListForm.NearbyCustomers_DistanceSlider = _NearbyCustomers_DistanceSlider.Value; } }; this.PartnerListForm = PartnerListForm; Map = new CustomMap(MapSpan.FromCenterAndRadius(new Position(32.7295492, 53.9990942), Distance.FromMiles(650))) { IsShowingUser = true }; Map.CustomPins = new List <CustomPin>(); PartnersMapContainer.Children.Add(Map); Map.ShowingPinChanged += Map_OnShowingPinChanged; PartnersSearchBar.TextChanged += async(sender, args) => { if (CurrentPageSet) { await PartnerListForm.FillPartners(args.NewTextValue); if (PartnerListForm.ListView.PartnersSearchBar.Text != args.NewTextValue) { PartnerListForm.ListView.PartnersSearchBar.Text = args.NewTextValue; } } }; PartnersSearchBar.SearchButtonPressed += async(sender, args) => { await PartnersSearchBar.FadeTo(0); PartnersSearchBar.IsVisible = false; PartnerListForm.ListView.PartnersSearchBar.IsVisible = false; if (App.UseVisitProgram.Value) { FiltersSection.IsVisible = true; await FiltersSection.FadeTo(1); PartnerListForm.ListView.FiltersSection.IsVisible = true; await PartnerListForm.ListView.FiltersSection.FadeTo(1); } }; IncludeVisitedsSwitch.Toggled += PartnerListForm.FilterChanged; if (!App.UseVisitProgram.Value) { FiltersSection.IsVisible = false; } }
public PartnerListForm_ListView(PartnerListForm PartnerListForm) { InitializeComponent(); Title = "لیست"; _NearbyCustomers_DistanceSlider.Minimum = 0; _NearbyCustomers_DistanceSlider.Maximum = 100; _NearbyCustomers_DistanceSlider.Value = 0.000324684131; _NearbyCustomers_DistanceSlider.ValueChanged += (sender, e) => { if (Math.Abs(PartnerListForm.NearbyCustomers_DistanceSlider - _NearbyCustomers_DistanceSlider.Value) >= 0.5) { PartnerListForm.NearbyCustomers_DistanceSlider = _NearbyCustomers_DistanceSlider.Value; } }; this.PartnerListForm = PartnerListForm; CustomPartnerListCell.HasGroupColumn = App.ShowPartnerGroupInList.Value; PartnerItems.ItemTemplate = new DataTemplate(typeof(CustomPartnerListCell)); PartnerItems.ItemSelected += PartnerItems_ItemSelected; PartnerItems.ItemTapped += PartnerItems_ItemTapped; PartnerItems.SeparatorColor = Color.FromHex("A5ABB7"); PartnerItems.HasUnevenRows = true; PartnersSearchBar.TextChanged += async(sender, args) => { if (CurrentPageSet) { await PartnerListForm.FillPartners(args.NewTextValue); if (PartnerListForm.MapView.PartnersSearchBar.Text != args.NewTextValue) { PartnerListForm.MapView.PartnersSearchBar.Text = args.NewTextValue; } } }; PartnersSearchBar.SearchButtonPressed += async(sender, args) => { await PartnersSearchBar.FadeTo(0); PartnersSearchBar.IsVisible = false; PartnerListForm.MapView.PartnersSearchBar.IsVisible = false; if (App.UseVisitProgram.Value) { FiltersSection.IsVisible = true; await FiltersSection.FadeTo(1); PartnerListForm.MapView.FiltersSection.IsVisible = true; await PartnerListForm.MapView.FiltersSection.FadeTo(1); } }; IncludeVisitedsSwitch.Toggled += PartnerListForm.FilterChanged; if (!App.UseVisitProgram.Value) { FiltersSection.IsVisible = false; } }
public VideoCaptureProvider() { bitPerPixel = 24; nextFrame = new AutoResetEvent(false); FiltersSection section = MainLogic.Instance.ConfigurationLogic.GetSection <FiltersSection>(sectionName); Filters.LoadFrom(section); }
public override void Save() { ConfigurationLogic configurationLogic = MainLogic.Instance.ConfigurationLogic; FiltersSection section = configurationLogic.GetSection <FiltersSection>(sectionName); if (section == null) { section = new FiltersSection(); configurationLogic.AddSection(sectionName, section); } Filters.SaveTo(section); }
internal void LoadFrom(FiltersSection section) { try { FilterCollection filterCollection = section.Filters; list = new List <IFilter>(); foreach (FilterElement filterElement in filterCollection) { Type filterType = filterElement.Type; ConstructorInfo constructor = filterType.GetConstructor(Type.EmptyTypes); if (constructor == null) { throw new MultitouchException(string.Format("no constructor found for filter '{0}'", filterType.FullName)); } IFilter filter = (IFilter)constructor.Invoke(new object[0]); list.Add(filter); foreach (FilterParameterElement parameterElement in filterElement.Parameters) { PropertyInfo propertyInfo = filterType.GetProperty(parameterElement.Name); TypeConverter converter = TypeDescriptor.GetConverter(parameterElement.Type); object value = converter.ConvertFrom(parameterElement.Value); propertyInfo.SetValue(filter, value, null); } } } catch (Exception e) { Trace.TraceError(e.ToString()); list = new List <IFilter>(); list.Add(new Grayscale()); list.Add(new RemoveBackground()); list.Add(new SimpleHighpass()); list.Add(new Scaler()); //list.Add(new Rectify()); list.Add(new Threshold()); } }
static PageNameFilter() { _logger = new EventLogHelper(typeof(PageNameFilter)); var filters = new List <IFilterPagesToAnalyze> { }; var config = FiltersSection.Get(); foreach (var filter in config.Filters.Cast <FilterElement>()) { var filterType = Type.GetType(filter.NameOrType); if (filterType == null) { _logger.Warn(() => string.Format("Couldn't load type for filter: {0}", filter.NameOrType)); continue; } filters.Add((IFilterPagesToAnalyze)Activator.CreateInstance(filterType)); } _filters = filters.ToArray(); }
private void AddTabFilters() { //Look for Audio Decoders, if exist assume decoders are installed & present config option if (splashScreen != null) { splashScreen.SetInformation("Adding filters section..."); } FiltersSection filterSection = new FiltersSection(); AddSection(new ConfigPage(null, filterSection, false)); //Log.Info(" add Video codec section"); //AddSection(new ConfigPage(filterSection, new MovieCodec(), false)); //Log.Info(" add DVD codec section"); //AddSection(new ConfigPage(filterSection, new DVDCodec(), false)); //Log.Info(" add TV codec section"); //AddSection(new ConfigPage(filterSection, new TVCodec(), false)); ArrayList availableAudioFilters = FilterHelper.GetFilters(MediaType.Audio, MediaSubType.Mpeg2Audio); if (availableAudioFilters.Count > 0) { if (splashScreen != null) { splashScreen.SetInformation("Adding audio filters..."); } ArrayList availableAACAudioFilters = FilterHelper.GetFilters(MediaType.Audio, MediaSubType.LATMAAC); if (availableAACAudioFilters.Count > 0) { foreach (string filter in availableAACAudioFilters) { if (filter.Equals("MONOGRAM AAC Decoder")) { FiltersMonogramAACDecoder monogramConfig = new FiltersMonogramAACDecoder(); AddSection(new ConfigPage(filterSection, monogramConfig, true)); } } } foreach (string filter in availableAudioFilters) { if (filter.Equals("NVIDIA Audio Decoder")) { FiltersPureVideoDecoder nvidiaConfig = new FiltersPureVideoDecoder(); AddSection(new ConfigPage(filterSection, nvidiaConfig, true)); } if (filter.Equals("InterVideo Audio Decoder")) { FiltersWinDVD7Decoder windvdConfig = new FiltersWinDVD7Decoder(); AddSection(new ConfigPage(filterSection, windvdConfig, true)); } if (filter.Equals("DScaler Audio Decoder")) { FiltersDScalerAudio dscalerConfig = new FiltersDScalerAudio(); AddSection(new ConfigPage(filterSection, dscalerConfig, true)); } if (filter.Equals("MPC - MPA Decoder Filter")) { FiltersMPEG2DecAudio mpaConfig = new FiltersMPEG2DecAudio(); AddSection(new ConfigPage(filterSection, mpaConfig, true)); } if (filter.Contains("CyberLink Audio Decoder")) { FiltersPowerDVDAudioDecoder pdvdAudioConfig = new FiltersPowerDVDAudioDecoder(); AddSection(new ConfigPage(filterSection, pdvdAudioConfig, true)); } } } //Look for Video Decoders, if exist assume decoders are installed & present config option ArrayList availableVideoFilters = FilterHelper.GetFilters(MediaType.Video, MediaSubTypeEx.MPEG2); if (availableVideoFilters.Count > 0) { if (splashScreen != null) { splashScreen.SetInformation("Adding video filters..."); } foreach (string filter in availableVideoFilters) { // if we do not have the audio codec installed we want to see the video config nevertheless if (filter.Contains("CyberLink Video/SP Decoder")) { FiltersPowerDVDDecoder pdvdConfig = new FiltersPowerDVDDecoder(); AddSection(new ConfigPage(filterSection, pdvdConfig, true)); } // if we do not have the audio codec installed we want to see the video config nevertheless if (filter.StartsWith("CyberLink Video Decoder (PDVD")) { FiltersPowerDVDDecoder10 pdvdConfig10 = new FiltersPowerDVDDecoder10(); AddSection(new ConfigPage(filterSection, pdvdConfig10, true)); } if (filter.Equals("MPC - MPEG-2 Video Decoder (Gabest)")) { FiltersMPEG2DecVideo mpvConfig = new FiltersMPEG2DecVideo(); AddSection(new ConfigPage(filterSection, mpvConfig, true)); } if (filter.Equals("DScaler Mpeg2 Video Decoder")) { FiltersDScalerVideo dscalervConfig = new FiltersDScalerVideo(); AddSection(new ConfigPage(filterSection, dscalervConfig, true)); } } } //Add section for video renderer configuration //FiltersVideoRenderer renderConfig = new FiltersVideoRenderer(); //AddSection(new ConfigPage(filterSection, renderConfig, true)); //Look for Audio Encoders, if exist assume encoders are installed & present config option string[] audioEncoders = new string[] { "InterVideo Audio Encoder" }; FilterCollection legacyFilters = Filters.LegacyFilters; foreach (Filter audioCodec in legacyFilters) { for (int i = 0; i < audioEncoders.Length; ++i) { if (String.Compare(audioCodec.Name, audioEncoders[i], true) == 0) { EncoderFiltersSection EncoderfilterSection = new EncoderFiltersSection(); AddSection(new ConfigPage(null, EncoderfilterSection, true)); FiltersInterVideoEncoder windvdEncoderConfig = new FiltersInterVideoEncoder(); AddSection(new ConfigPage(EncoderfilterSection, windvdEncoderConfig, true)); } } } }
/// <summary> /// Manage the steps of parsing and creation of the various reports. /// </summary> /// <param name="filesToProcess">Files to parse</param> public static void DoTheMagic(string[] filesToProcess) { var unitySection = (UnityConfigurationSection)ConfigurationManager.GetSection("Unity"); IUnityContainer container = new UnityContainer(); unitySection.Configure(container); IMaker maker = container.Resolve <IMaker>(); IParser parser = container.Resolve <IParser>(); ILogger logger = container.Resolve <ILogger>(); byte[] outputFile = null; int correctCounter = 0; int failedCounter = 0; FiltersSection section = ConfigurationManager.GetSection("Filters") as FiltersSection; foreach (var file in filesToProcess) { try { logger.Info(string.Format("Inizio a processare il file {0}", Path.GetFileName(file)), 0, 0); string path = Directory.GetParent(file).FullName; string name = Path.GetFileNameWithoutExtension(file); // Step #1: Parsing ShipmentsData info = parser.Parse(File.ReadAllLines(file)); logger.Info(string.Format("===> Parsing completato correttamente. {0} corrieri trovati.", info.Shipments.Count), 0, 0); List <ShipmentsData> filteredData = new List <ShipmentsData>(); int subReport = 1; foreach (FiltersSettingsElement v in section.FiltersSettings) { string outputFileName = string.Format("{0}{1}.pdf", name, v.Suffix); // Step #2: Filtering Regex currentRegex = new Regex(v.Pattern); ShipmentsData currentData = new ShipmentsData() { MetaInformation = info.MetaInformation, Shipments = info.Shipments.Where(x => currentRegex.IsMatch(x.Name)).ToList(), Date = info.Date }; info.Shipments.RemoveAll(x => currentRegex.IsMatch(x.Name)); // Step #3: Making the final report try { outputFile = maker.MakeFinalReport(currentData); logger.Info(string.Format("===> [{1}/{2}] Report creato correttamente. {0} kB totali.", outputFile.Length / 1024, subReport, section.FiltersSettings.Count), 0, 0); // Step #4: Writing the report File.WriteAllBytes(Path.Combine(path, outputFileName), outputFile); logger.Info(string.Format("===> [{2}/{3}] Report scritto correttamente: {0}. {1} Corrieri.", outputFileName, currentData.Shipments.Count, subReport, section.FiltersSettings.Count), 0, 0); } catch (Exception ex) { logger.Error(string.Format("Errore durante la creazione/scrittura del report {0}: {1}", outputFileName, ex.Message), 0, 0); } subReport++; } if (info.Shipments.Count > 0) { logger.Warning("**WARNING** Trovati corrieri spuri!", 0, 0); outputFile = maker.MakeFinalReport(info); logger.Info(string.Format("===> Report creato correttamente. {0} kB totali.", outputFile.Length / 1024), 0, 0); string outputFileName = string.Format("{0}_Spurious.pdf", name); File.WriteAllBytes(Path.Combine(path, outputFileName), outputFile); logger.Info(string.Format("===> Report corrieri spuri scritto correttamente: {0}.", outputFileName), 0, 0); } correctCounter++; } catch (Exception ex) { logger.Error(ex.Message, 0, 0); failedCounter++; } } Console.WriteLine(); Console.WriteLine(string.Format("Finito! {0} file totali, {1} processati correttamente, {2} file falliti!", filesToProcess.Length, correctCounter, failedCounter)); }