Exemple #1
0
        private static IDocumentationRow CreateUnderReviewPlantRow(string modelName)
        {
            string             validationFile = Path.Combine(underReview, modelName, $"{modelName}.apsimx");
            string             modelPath      = $"[Replacements].{modelName}";
            IDocumentationFile file           = new DocsFromModelPath(validationFile, modelPath, $"{modelName}.pdf", options, true);
            IDocumentationCell cell           = new DocumentationCell(new[] { file });
            IDocumentationFile parameters     = new ParamsDocsFromFile(validationFile, $"{modelName}-parameters.pdf", options, modelPath);
            IDocumentationCell paramsCell     = new DocumentationCell(parameters);

            return(new DocumentationRow(modelName, new[] { cell, paramsCell }));
        }
Exemple #2
0
        private static IDocumentationRow StockRow()
        {
            string validationFile = Path.Combine(validation, "Stock", "Stock.apsimx");

            IDocumentationFile paramsDoc  = new ParamsDocsFromFile(validationFile, $"Stock-parameters.pdf", options, "[Supplement]");
            IDocumentationCell paramsCell = new DocumentationCell(paramsDoc);

            IDocumentationFile grazPlanDoc = new ExternalDocument("GRAZPLAN Animal Biology Model", grazPlan);
            IDocumentationCell detailsCell = new DocumentationCell(grazPlanDoc);

            return(CustomDocsRow("Stock", validationFile.ToEnumerable(), "Stock.pdf", new [] { paramsCell, detailsCell }));
        }
Exemple #3
0
        private static IDocumentationRow ModelWithNoResourceRow(string modelName, IEnumerable <IDocumentationCell> extraCells = null)
        {
            string validationFile       = Path.Combine(validation, modelName, $"{modelName}.apsimx");
            IEnumerable <string> inputs = new string[1] {
                validationFile
            };

            IDocumentationFile paramsDocs = new ParamsDocsFromFile(validationFile, $"{modelName}-params.pdf", options);
            IDocumentationCell paramsCell = new DocumentationCell(paramsDocs);

            extraCells = extraCells == null?paramsCell.ToEnumerable() : extraCells.Prepend(paramsCell);

            return(CustomDocsRow(modelName, inputs, $"{modelName}.pdf", extraCells));
        }
Exemple #4
0
        private static IDocumentationRow SoilWaterDocs()
        {
            // This is almost like StandardPmfModelRow() except that the resource
            // file is WaterBalance.json rather than SoilWater.json.
            string modelName            = "SoilWater";
            string model                = Path.Combine(resources, "WaterBalance.json");
            string validationFile       = Path.Combine(validation, modelName, $"{modelName}.apsimx");
            IEnumerable <string> inputs = new string[2] {
                model, validationFile
            };

            IDocumentationFile parameters = new ParamsDocsFromFile(validationFile, $"SoilWater-parameters.pdf", options);
            IDocumentationCell paramsCell = new DocumentationCell(parameters);

            return(CustomDocsRow("SoilWater", inputs, $"{modelName}.pdf", paramsCell.ToEnumerable()));
        }
Exemple #5
0
        private static IDocumentationRow StandardDocsRow(string name, string modelResourceFile, string validationFile, string outFile, IEnumerable <IDocumentationCell> extraCells = null)
        {
            string model               = Path.Combine(resources, modelResourceFile);
            string validation          = Path.Combine(Program.validation, Path.GetFileNameWithoutExtension(validationFile), validationFile);
            IEnumerable <string> files = new string[2] {
                model, validation
            };

            string paramsFileName = $"{Path.GetFileNameWithoutExtension(outFile)}-parameters.pdf";

            IDocumentationFile autodoc = new DocsFromFile(files, outFile, options);
            IDocumentationFile param   = new ParamsDocsFromFile(model, paramsFileName, options);

            List <IDocumentationCell> cells = new List <IDocumentationCell>();

            cells.Add(new DocumentationCell(autodoc));
            cells.Add(new DocumentationCell(param));
            if (extraCells != null)
            {
                cells.AddRange(extraCells);
            }

            return(new DocumentationRow(name, cells));
        }