/// <summary>
        /// Initializes a new instance of the <see cref="APSIMFileWriter"/> class.
        /// This object is used to write the fields to the SDML xml file
        /// passed from an AusFarmSpec object via the AusFarmFiles host.
        /// </summary>
        public AusFarmFileWriter(SimulationType templateType)
        {
            // Load the template file.
            string scriptTemplate = "";
            switch (templateType)
            {
                case SimulationType.stCropOnly:
                    scriptTemplate = "APSIM.Cloud.Shared.Resources.ausfarm_crop_only.sdml";
                    break;
                case SimulationType.stSingleFlock:
                    scriptTemplate = "APSIM.Cloud.Shared.Resources.ausfarm_warooka.sdml";
                    break;
                case SimulationType.stDualFlock:
                    scriptTemplate = "APSIM.Cloud.Shared.Resources.ausfarm_dual_flock.sdml";
                    break;
            }

            if (scriptTemplate.Length > 0)
            {
                Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream(scriptTemplate);
                StreamReader reader = new StreamReader(s);
                xmlScriptDoc = new TCompParser(reader.ReadToEnd());
                simulationXMLNode = xmlScriptDoc.rootNode();
            }
            else
                simulationXMLNode = null; 
        }