static void Main(string[] args) { if (args.Length == 0) { Console.WriteLine( "Usage: ParameterMetaDataGenerator.exe \"ArduCopter\\Parameters.cpp;ArduPlane\\Parameters.cpp;APMrover2\\Parameters.cpp\" output.xml"); return; } log4net.Repository.Hierarchy.Hierarchy hierarchy = (Hierarchy)log4net.LogManager.GetRepository(Assembly.GetAssembly(typeof(Program))); PatternLayout patternLayout = new PatternLayout(); patternLayout.ConversionPattern = "%date [%thread] %-5level %logger - %message%newline"; patternLayout.ActivateOptions(); var cca = new ConsoleAppender(); cca.Layout = patternLayout; cca.ActivateOptions(); hierarchy.Root.AddAppender(cca); hierarchy.Root.Level = Level.Debug; hierarchy.Configured = true; ParameterMetaDataParser.GetParameterInformation(args[0], args[1]); }
private void myButton1_Click_2(object sender, EventArgs e) { ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduCopter-2.8.1/ArduCopter/Parameters.pde" , "ArduCopter2.8.1.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduCopter-2.9.1/ArduCopter/Parameters.pde" , "ArduCopter2.9.1.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduCopter-3.0/ArduCopter/Parameters.pde" , "ArduCopter3.0.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduCopter-3.1.5/ArduCopter/Parameters.pde" , "ArduCopter3.1.5.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduCopter-3.2.1/ArduCopter/Parameters.pde" , "ArduCopter3.2.1.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/Copter-3.3.2/ArduCopter/Parameters.cpp" , "ArduCopter3.3.2.xml"); // plane ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-3.5.2/ArduPlane/Parameters.cpp" , "ArduPlane3.5.2.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-3.3.0/ArduPlane/Parameters.pde" , "ArduPlane3.3.0.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-3.2.2/ArduPlane/Parameters.pde" , "ArduPlane3.2.2.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-3.1.0/ArduPlane/Parameters.pde" , "ArduPlane3.1.0.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-3.0.3/ArduPlane/Parameters.pde" , "ArduPlane3.0.3.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-2.78b/ArduPlane/Parameters.pde" , "ArduPlane2.78b.xml"); ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/ArduPilot/ardupilot/ArduPlane-2.75/ArduPlane/Parameters.pde" , "ArduPlane2.75.xml"); }
private void BUT_paramgen_Click(object sender, EventArgs e) { if(MissionPlanner.Utilities.Update.dobeta) ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocationsBleeding"]); else ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocations"]); ParameterMetaDataRepositoryAPM.Reload(); }
private void BUT_paramgen_Click(object sender, EventArgs e) { /* * if(MissionPlanner.Utilities.Update.dobeta) * ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocationsBleeding"]); * else * ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocations"]); */ // scan latest, and append older ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocationsBleeding"] + ";" + ConfigurationManager.AppSettings["ParameterLocations"]); ParameterMetaDataRepositoryAPM.Reload(); }
private void BUT_paramgen_Click(object sender, EventArgs e) { if (MissionPlanner.Utilities.Update.dobeta) { ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/BogdanPal1/ardupilot/pmucan/ArduPlane/Parameters.cpp"); } else { ParameterMetaDataParser.GetParameterInformation( "https://raw.githubusercontent.com/BogdanPal1/ardupilot/pmucan/ArduPlane/Parameters.cpp"); } ParameterMetaDataRepositoryAPM.Reload(); }
private void BUT_paramgen_Click(object sender, System.EventArgs e) { ProgressReporterDialogue prd = new ProgressReporterDialogue(); prd.DoWork += dialogue => { ParameterMetaDataParser.GetParameterInformation( ConfigurationManager.AppSettings["ParameterLocationsBleeding"] + ";" + ConfigurationManager.AppSettings["ParameterLocations"]); ParameterMetaDataRepositoryAPM.Reload(); }; prd.doWorkArgs.ForceExit = true; prd.RunBackgroundOperationAsync(); }
private void BUT_paramgen_Click(object sender, System.EventArgs e) { ProgressReporterDialogue prd = new ProgressReporterDialogue(); prd.DoWork += dialogue => { prd.UpdateProgressAndStatus(-1, "Downloading updated data"); ParameterMetaDataParser.GetParameterInformation( ConfigurationManager.AppSettings["ParameterLocationsBleeding"] + ";" + ConfigurationManager.AppSettings["ParameterLocations"] + ";" + "https://raw.githubusercontent.com/BeagleSystems/ardupilot/master/ArduPlane/Parameters.cpp;"); ParameterMetaDataRepositoryAPM.Reload(); }; prd.doWorkArgs.CancelRequestChanged += (sender2, args) => { prd.doWorkArgs.CancelAcknowledged = true; }; prd.doWorkArgs.ForceExit = true; prd.RunBackgroundOperationAsync(); }
private void BUT_paramgen_Click(object sender, System.EventArgs e) { ProgressReporterDialogue prd = new ProgressReporterDialogue(); prd.DoWork += dialogue => { prd.UpdateProgressAndStatus(-1, "Downloading updated data"); ParameterMetaDataParser.GetParameterInformation( ConfigurationManager.AppSettings["ParameterLocationsBleeding"] + ";" + ConfigurationManager.AppSettings["ParameterLocations"] + ";" + "https://raw.githubusercontent.com/ArduPilot/ardupilot/Copter-3.6/ArduCopter/Parameters.cpp;" + "https://raw.githubusercontent.com/ArduPilot/ardupilot/Copter-3.5/ArduCopter/Parameters.cpp;" + "https://raw.githubusercontent.com/ArduPilot/ardupilot/plane3.9/ArduCopter/Parameters.cpp;" + "https://raw.githubusercontent.com/ArduPilot/ardupilot/plane3.8/ArduCopter/Parameters.cpp;"); ParameterMetaDataRepositoryAPM.Reload(); }; prd.doWorkArgs.ForceExit = true; prd.RunBackgroundOperationAsync(); }
private void BUT_paramgen_Click(object sender, EventArgs e) { ParameterMetaDataParser.GetParameterInformation(); ParameterMetaDataRepository.Reload(); }
static void Main(string[] args) { log4net.Repository.Hierarchy.Hierarchy hierarchy = (Hierarchy)log4net.LogManager.GetRepository(Assembly.GetAssembly(typeof(Program))); PatternLayout patternLayout = new PatternLayout(); patternLayout.ConversionPattern = "%date [%thread] %-5level %logger - %message%newline"; patternLayout.ActivateOptions(); var cca = new ConsoleAppender(); cca.Layout = patternLayout; cca.ActivateOptions(); hierarchy.Root.AddAppender(cca); hierarchy.Root.Level = Level.Debug; hierarchy.Configured = true; if (false) { var resp = "https://api.github.com/repos/ardupilot/ardupilot/git/refs/tags" .WithHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36") .AllowAnyHttpStatus() .GetAsync().Result; var tags = resp.GetJsonListAsync().Result; foreach (var tag in tags) { var tagdict = (IDictionary <String, Object>)tag; var refpath = tagdict["ref"].ToString(); if (refpath.Contains("ArduPlane") || refpath.Contains("Copter") || refpath.Contains("Rover") || refpath.Contains("APMrover2") || refpath.Contains("ArduSub") || refpath.Contains("AntennaTracker")) { var taginfo = (IDictionary <String, Object>)((string)tagdict["url"]) .WithHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36") .GetJsonAsync().Result; var sha = ((IDictionary <String, Object>)taginfo["object"])["sha"].ToString(); var refname = ((string)taginfo["ref"]).Replace("refs/tags/", ""); var paramfile = ""; if (refname.Contains("Copter")) { paramfile = "ArduCopter/Parameters.pde;ArduCopter/Parameters.cpp"; } if (refname.Contains("ArduPlane")) { paramfile = "ArduPlane/Parameters.pde;ArduPlane/Parameters.cpp"; } if (refname.Contains("ArduSub")) { paramfile = "ArduSub/Parameters.pde;ArduSub/Parameters.cpp"; } if (refname.Contains("Rover")) { paramfile = "Rover/Parameters.pde;Rover/Parameters.cpp"; } if (refname.Contains("APMrover2")) { paramfile = "APMrover2/Parameters.pde;APMrover2/Parameters.cpp"; } if (refname.Contains("AntennaTracker")) { paramfile = "AntennaTracker/Parameters.pde;AntennaTracker/Parameters.cpp"; } if (paramfile == "") { continue; } var XMLFileName = String.Format("{0}{1}", Settings.GetUserDataDirectory(), refname + ".xml"); if (File.Exists(XMLFileName)) { continue; } ParameterMetaDataParser.GetParameterInformation( paramfile.Split(';') .Select(a => { a = a.Trim(); return("https://raw.github.com/ardupilot/ardupilot/" + sha + "/" + a + ";"); }).Aggregate("", (a, b) => a + b) , refname + ".xml"); } } } if (args.Length == 1) { Console.WriteLine("needs ot be started inside the git repo"); var proc = new System.Diagnostics.Process { StartInfo = new System.Diagnostics.ProcessStartInfo { FileName = "git", Arguments = "tag", UseShellExecute = false, RedirectStandardOutput = true, CreateNoWindow = true } }; proc.Start(); var resp = proc.StandardOutput.ReadToEnd(); var tags = resp.Split('\n'); foreach (var tag in tags) { var refpath = tag; if (refpath.Contains("ArduPlane") || refpath.Contains("Copter") || refpath.Contains("Rover") || refpath.Contains("APMrover2") || refpath.Contains("ArduSub") || refpath.Contains("AntennaTracker")) { if (!Regex.IsMatch(refpath, @"\.[0-9]+$")) { continue; } var refname = tag; var paramfile = ""; if (refname.Contains("Copter")) { paramfile = "ArduCopter/Parameters.pde;ArduCopter/Parameters.cpp"; } if (refname.Contains("ArduPlane")) { paramfile = "ArduPlane/Parameters.pde;ArduPlane/Parameters.cpp"; } if (refname.Contains("ArduSub")) { paramfile = "ArduSub/Parameters.pde;ArduSub/Parameters.cpp"; } if (refname.Contains("Rover") || refname.Contains("APMrover2")) { paramfile = "Rover/Parameters.pde;Rover/Parameters.cpp;APMrover2/Parameters.pde;APMrover2/Parameters.cpp"; } if (refname.Contains("AntennaTracker")) { paramfile = "AntennaTracker/Parameters.pde;AntennaTracker/Parameters.cpp"; } if (paramfile == "") { continue; } var XMLFileName = String.Format("{0}{1}", Settings.GetUserDataDirectory(), refname + ".xml"); if (File.Exists(XMLFileName)) { continue; } var proc2 = new System.Diagnostics.Process() { StartInfo = new System.Diagnostics.ProcessStartInfo("git", "reset --hard " + tag) { CreateNoWindow = true, UseShellExecute = false } }; proc2.Start(); proc2.WaitForExit(); ParameterMetaDataParser.GetParameterInformation( paramfile.Split(';') .Select(a => { a = a.Trim(); return(Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + a + ";"); }).Aggregate("", (a, b) => a + b) , refname + ".xml"); } } return; } if (args.Length == 0) { Console.WriteLine( "Usage: ParameterMetaDataGenerator.exe \"ArduCopter\\Parameters.cpp;ArduPlane\\Parameters.cpp;APMrover2\\Parameters.cpp\" output.xml"); return; } ParameterMetaDataParser.GetParameterInformation(args[0], args[1]); }
private void BUT_paramgen_Click(object sender, System.EventArgs e) { ParameterMetaDataParser.GetParameterInformation(ConfigurationManager.AppSettings["ParameterLocationsBleeding"] + ";" + ConfigurationManager.AppSettings["ParameterLocations"]); ParameterMetaDataRepositoryAPM.Reload(); }