package com.plectix.simulator.parser; /** * Inner representation of kappa file content. * It consists of KappaFileParagraphs, which in their order, consist of KappaFileLines. * There are 5 different paragraphs, each for each purpose description: * rules, initial species, stories, observables and perturbations */ public final class KappaFile { private final KappaFileParagraph rulesParagraph = new KappaFileParagraph(); private final KappaFileParagraph observablesParagraph = new KappaFileParagraph(); private final KappaFileParagraph storiesParagraph = new KappaFileParagraph(); private final KappaFileParagraph solutionParagraph = new KappaFileParagraph(); private final KappaFileParagraph perturbationsParagraph = new KappaFileParagraph(); public final boolean containsNoRules() { return rulesParagraph.isEmpty(); } //----------------------ADDERS =)------------------------------ public final void addRuleLine(KappaFileLine line) { rulesParagraph.addLine(line); } public final void addObservableLine(KappaFileLine line) { observablesParagraph.addLine(line); } public final void addStoryLine(KappaFileLine line) { storiesParagraph.addLine(line); } public final void addInitialSolutionLine(KappaFileLine line) { solutionParagraph.addLine(line); } public final void addPerturbationLine(KappaFileLine line) { perturbationsParagraph.addLine(line); } //----------------------GETTERS------------------------------- public final KappaFileParagraph getRules() { return rulesParagraph; } public final KappaFileParagraph getObservables() { return observablesParagraph; } public final KappaFileParagraph getStories() { return storiesParagraph; } public final KappaFileParagraph getSolution() { return solutionParagraph; } public final KappaFileParagraph getPerturbations() { return perturbationsParagraph; } }