Example #1
0
        public void DataTreeTest()
        {
            String sinterconf              = Properties.Settings.Default.ExcelSinterJson;
            String defaultsfile            = null;
            String infilename              = Properties.Settings.Default.ExcelSinterInputs;
            String outfilename             = Properties.Settings.Default.ExcelSinterOutputs;
            String canonicalOutputFilename = Properties.Settings.Default.ExcelSinterCanonicalOutputs;

            ISimulation           sim   = startupSim(sinterconf, defaultsfile, infilename);
            sinter_InteractiveSim a_sim = (sinter_InteractiveSim)sim; //Only works on Interactive sims

            {
                String nodePath = "height$C$2";

                VariableTreeNode testNode = sim.dataTree.resolveNode(nodePath);
                Assert.IsTrue(nodePath == testNode.path);
                Assert.IsTrue(testNode.name == "C");

                sinter_Variable tmp = new sinter_Variable();
                tmp.init(a_sim, sinter_Variable.sinter_IOType.si_DOUBLE, new String[] { nodePath });

                Assert.IsTrue((double)tmp.dfault == 74);
                Assert.IsTrue(tmp.type == sinter_Variable.sinter_IOType.si_DOUBLE);
            }

            {
                String nodePath = "height$B$2";

                VariableTreeNode testNode = sim.dataTree.resolveNode(nodePath);
                Assert.IsTrue(nodePath == testNode.path);
                Assert.IsTrue(testNode.name == "B");

                sinter_Variable tmp = new sinter_Variable();
                tmp.init(a_sim, sinter_Variable.sinter_IOType.si_STRING, new String[] { nodePath });

                Assert.IsTrue((String)tmp.dfault == "Leek");
                Assert.IsTrue(tmp.type == sinter_Variable.sinter_IOType.si_STRING);
            }
            sim.closeSim();
        }
Example #2
0
        private ISimulation startupSim(String sinterconf, String defaultsfile, String infilename)
        {
            String workingDir = Path.GetDirectoryName(sinterconf);

            StreamReader defaultsStream = null;

            if (defaultsfile != null)
            {
                defaultsStream = new StreamReader(defaultsfile);
            }
            StreamReader inStream = new StreamReader(infilename);

            //this function returns 0 if no error
            //another integer for errors
            StreamReader inFileStream = new StreamReader(sinterconf);
            string       setupString  = "";

            setupString = inFileStream.ReadToEnd();
            inFileStream.Close();

            ISimulation stest = sinter_Factory.createSinter(setupString); //Need to change this to setup file contents string

            stest.workingDir = workingDir;
            //stest.readSetup(sinterconf); //Read the setup file also opens sim
            stest.openSim(); //connect to aspen
            stest.Vis = false;
            Console.WriteLine(stest.Vis);
            //      stest.Layout();  //figure out spreadsheet layout
            stest.dialogSuppress = true;
            stest.resetSim();

            //We only use this with Jim's tightly coupled sims
            if (stest is sinter_InteractiveSim)
            {
                sinter_InteractiveSim stest_sim = (sinter_InteractiveSim)stest;
                stest_sim.makeDataTree();
            }
            return(stest);
        }