/// <summary>
        /// Get a list with the names of all GPUs on this machine.
        /// </summary>
        /// <returns>List of strings</returns>
        static public List <string> GpuNames()
        {
            List <string> names = new List <string>();

            using (var list = new ClassArrayString())
            {
                var lst_ptr = list.NonConstPointer();
                UnsafeNativeMethods.RhCmn_DisplayDeviceInfo_GetGPUOnlyDeviceNames(lst_ptr);
                names.AddRange(list.ToArray());
            }

            return(names);
        }
示例#2
0
        /// <since>5.0</since>
        public static string[] AvailableFontFaceNames()
        {
            string[] rc = null;
            using (var strings = new ClassArrayString())
            {
                IntPtr ptr_strings = strings.NonConstPointer();
                UnsafeNativeMethods.ON_Font_GetFontNames(ptr_strings);
                rc = strings.ToArray();
            }

            if (null == rc || rc.Length < 1)
            {
                System.Drawing.Text.InstalledFontCollection fonts = new System.Drawing.Text.InstalledFontCollection();
                rc = new string[fonts.Families.Length];
                for (int i = 0; i < fonts.Families.Length; i++)
                {
                    rc[i] = fonts.Families[i].Name;
                }
            }
            Array.Sort(rc);
            return(rc);
        }