BSky.Statistics.R.RPackageManager.GetCurrentlyLoadedPackages C# (CSharp) Method

GetCurrentlyLoadedPackages() public method

public GetCurrentlyLoadedPackages ( ) : string[]
return string[]
        public string[] GetCurrentlyLoadedPackages()
        {
            string commandstring = "tmp <- search()";
            _journal.WriteLine(commandstring);
            _dispatcher.EvaluateToObject(commandstring, false);
            // tmp contains packages and .GlbalEnv etc..
            object o = _dispatcher.EvaluateToObject("tmp", true);
            string[] allstuff = this.ObjectToStringArray(o);
            int count = 0;
            foreach (string s in allstuff) // counting packages in all the strings returned by search()
            {
                if (s.StartsWith("package:"))
                    count++;
            }

            string[] pkgs = new string[count];
            int i = 0;
            foreach (string s in allstuff)
            {
                if (s.StartsWith("package:"))
                {
                    pkgs[i] = s.Replace("package:", string.Empty).Trim();
                    i++;
                }
            }
            return pkgs;
        }