Example #1
0
        /// <summary>
        /// Constructor which sets up a default specification. Can be used to
        /// construct a specification 'by hand' (i.e, using function calls and setting public
        /// members).
        /// </summary>
        public Specification()
        {
            m_inputDirectory = System.IO.Directory.GetCurrentDirectory();

            InitFloatTypes();
            m_copyright = "";
            m_outputLanguage = OUTPUT_LANGUAGE.NONE;
            m_coordStorage = COORD_STORAGE.ARRAY;
            SetDimension(1);
            InitMetric();
            InitBasisBladeParser();

            System.Console.WriteLine("Specification.Specification(): todo: set members to default values");
        }
Example #2
0
        /// <summary>
        /// Constructor which reads an XML specification file.
        /// </summary>
        /// <param name="filename">Filename of XML file.</param>
        public Specification(string filename)
        {
            try
            {
                m_inputDirectory = System.IO.Path.GetDirectoryName(filename);
            }
            catch (Exception)
            {
                m_inputDirectory = System.IO.Directory.GetCurrentDirectory();
            }

            InitFloatTypes();
            m_copyright = "";
            m_outputLanguage = OUTPUT_LANGUAGE.NONE;
            InitMetric();
            InitBasisBladeParser();

            SetOutputDir(System.IO.Directory.GetCurrentDirectory());
            m_outputDirectoryExplicitlySet = false; // force to false

            XmlDocument doc = new XmlDocument();
            doc.Load(filename);

            // todo: maybe remember what 'filename' refers to, so we can use it as
            // a relative path for e.g., licenses.

            XML.InitFromXmlDocument(this, doc);
        }
Example #3
0
 /// <summary>
 /// Sets language of emitted code.
 /// </summary>
 /// <param name="language">valid values are "cpp", "java" and "csharp".
 /// (XML_C, XML_CPP, XML_JAVA, XML_CSHARP, XML_PYTHON, XML_MATLAB)
 /// </param>
 public void SetLanguage(string language)
 {
     switch (language.ToLower()) {
         case XML.XML_C: m_outputLanguage = OUTPUT_LANGUAGE.C;
             break;
         case XML.XML_CPP: m_outputLanguage = OUTPUT_LANGUAGE.CPP;
             break;
         case XML.XML_CSHARP: m_outputLanguage = OUTPUT_LANGUAGE.CSHARP;
             break;
         case XML.XML_JAVA: m_outputLanguage = OUTPUT_LANGUAGE.JAVA;
             break;
         case XML. XML_MATLAB: m_outputLanguage = OUTPUT_LANGUAGE.MATLAB;
             break;
         case XML.XML_PYTHON: m_outputLanguage = OUTPUT_LANGUAGE.PYTHON;
             break;
         default:
             throw new G25.UserException("Unknown output language " + language);
     }
 }