/// <summary>
        /// Creates Xml document
        /// </summary>
        /// <param name="desktop">Desktop</param>
        /// <param name="input">Input</param>
        /// <param name="start">Start</param>
        /// <param name="step">Step</param>
        /// <param name="count">Count of steps</param>
        /// <returns>Document</returns>
        static public XmlDocument CreateXmlDocument(this IDesktop desktop,
                                                    XmlDocument input, double start, double step, int count)
        {
            string consumer = (input.GetElementsByTagName("ChartName")[0] as XmlElement).InnerText;

            return(desktop.CreateXmlDocument(consumer, input, start, step, count));
        }
        /// <summary>
        /// Creates Xml document
        /// </summary>
        /// <param name="desktop">Desktop</param>
        /// <param name="input">Input</param>
        /// <returns>Document</returns>
        static public XmlDocument CreateXmlDocument(this IDesktop desktop, XmlDocument input)
        {
            string     consumer           = (input.GetElementsByTagName("ChartName")[0] as XmlElement).InnerText;
            XmlElement p                  = input.GetElementsByTagName("Interval")[0] as XmlElement;
            Dictionary <string, string> d = new Dictionary <string, string>();

            foreach (XmlElement e in p.ChildNodes)
            {
                d[e.Name] = e.InnerText;
            }
            double a      = 0;
            double start  = (double)d["Start"].FromString(a);
            double step   = (double)d["Step"].FromString(a);
            double finish = (double)d["Finish"].FromString(a);
            int    count  = (int)((finish - start) / step);

            return(desktop.CreateXmlDocument(consumer, input, start, step, count));
        }