Example #1
0
        public static bool LoadDataSourcePlugins()
        {
            try
            {
                if (atcDataManager.DataSources is null)
                {
                    atcDataManager.Clear();
                }
                if (atcDataManager.DataPlugins.Count > 0)
                {
                    return(true);
                }
                var att = new atcDataAttributes();
                atcTimeseriesStatistics.atcTimeseriesStatistics.InitializeShared();
                //var datasources = atcDataManager.GetPlugins(typeof(atcDataSource));
                atcTimeseriesNdayHighLow.atcTimeseriesNdayHighLow.InitializeShared();
                var script = new atcTimeseriesScript.atcTimeseriesScriptPlugin();
                atcDataManager.DataPlugins.Add(script);
                var lRDB = new atcTimeseriesRDB.atcTimeseriesRDB();
                atcDataManager.DataPlugins.Add(lRDB);
                var listPlugin = new atcList.atcListPlugin();
                atcDataManager.DataPlugins.Add(listPlugin);
                var graphPlugin = new atcGraph.atcGraphPlugin();
                atcDataManager.DataPlugins.Add(graphPlugin);
                TSMath = new atcTimeseriesMath.atcTimeseriesMath();
                var saPlugin = new atcSeasonalAttributes.atcSeasonalAttributesPlugin();
                atcDataManager.DataPlugins.Add(saPlugin);
                var sPlugin = new atcSeasons.atcSeasonPlugin();
                atcDataManager.DataPlugins.Add(sPlugin);
                var bfPlugin = new atcTimeseriesBaseflow.atcTimeseriesBaseflow();
                atcDataManager.DataPlugins.Add(bfPlugin);

                var gdalRasterHandle = new DotSpatial.Data.Rasters.GdalExtension.GdalRasterProvider();
                var gdalImageHandle  = new DotSpatial.Data.Rasters.GdalExtension.GdalImageProvider();
                DotSpatial.Data.DataManager.DefaultDataManager.PreferredProviders.Add("GdalImageProvider", gdalImageHandle);
                var gdalOgrHandle = new DotSpatial.Data.Rasters.GdalExtension.OgrDataProvider();
                DotSpatial.Data.DataManager.DefaultDataManager.PreferredProviders.Add("OgrDataProvider", gdalOgrHandle);
                //DotSpatial.Symbology.RasterLayer.MaxCellsInMemory = 80 * 60;

                return(true);
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.Print(e.InnerException.Message);
                return(false);
            }
        }
Example #2
0
        private void OnTSMenuClickEventHandler(object sender, EventArgs e)
        {
            //The order in which menu entries are tested is significant
            var act = ((SimpleActionItem)sender).Caption;

            if (act == Utilities.TSToolDescription(ETSTool.LIST))
            {
                var plugin = new atcList.atcListPlugin();
                plugin.Show();
            }
            else if (act == Utilities.TSToolDescription(ETSTool.ATTRIBUTES))
            {
                /*
                 * var plugin = new atcSeasons.atcSeasonPlugin();
                 * plugin.CleanUpMode = IDataManagement.ECleanUpMode.CALCULATED;
                 * atcDataSource lNewSource = plugin.ComputeClicked(plugin.Category + "_Attributes");
                 * //plugin.ItemClicked("BasinsCompute_Seasons_Attributes_Timeseries::Seasons", ref handled);
                 * if (lNewSource != null && lNewSource.DataSets.Count > 0)
                 * {
                 *  ((atcSeasons.atcSeasonPlugin)lNewSource).CleanUpMode = IDataManagement.ECleanUpMode.CALCULATED;
                 *  string lTitle  = lNewSource.ToString();
                 *  atcDataManager.UserSelectDisplay(lTitle, ((atcSeasons.atcSeasonPlugin)lNewSource).DataSets);
                 * }
                 */
                var plugin = new atcSeasonalAttributes.atcSeasonalAttributesPlugin();
                plugin.Show(null);
            }
            else if (act == Utilities.TSToolDescription(ETSTool.GRAPH))
            {
                var plugin = new atcGraph.atcGraphPlugin();
                plugin.Show();
            }
            else if (act == Utilities.TSToolDescription(ETSTool.DATATREE))
            {
                var plugin = new atcDataTree.atcDataTreePlugin();
                plugin.Show();
            }
            else if (act == Utilities.TSToolDescription(ETSTool.TREND))
            {
                var plugin = new atcIDF.clsIDFPlugin();
                plugin.ShowFunction("Trend");
            }
            else if (act.Contains("Events"))
            {
                var plugin = new atcSynopticAnalysis.atcSynopticAnalysisPlugin();
                plugin.Show();
            }
            else if (act.Contains("Subset") && act.Contains("Filter"))
            {
                atcDataManager.UserSelectDataOptions.Add("ShowFilterOption", false);
                var lform = new frmFilterData();
                atcTimeseriesGroup processed = lform.AskUser((atcTimeseriesGroup)atcDataManager.UserSelectData());
                var spec = "Split Filter";
                if (processed != null && processed.Count > 0)
                {
                    var seasonSpec = processed[0].Attributes.GetValue("SeasonDefinition", null);
                    if (seasonSpec != null)
                    {
                        spec += ": " + seasonSpec.ToString();
                    }
                    atcDataManager.RemoveDataSource(spec);
                    var processedDS = new atcSeasons.atcSeasonPlugin();
                    processedDS.Specification = spec;
                    processedDS.DataSets.AddRange(processed);
                    atcDataManager.DataSources.Add(processedDS);
                }
            }
            else if (act.Contains("Subset") || act.Contains("Merge"))
            {
                RunTSMath(Utilities.TSMath.Category + "_Date_" + act);
            }
            else if (!(act.Contains("Subset") || act.Contains("Celsius") || act.Contains("Sum") || act.Contains("Merge")))
            {
                RunTSMath(Utilities.TSMath.Category + "_Math_" + act);
            }
        }