1 | model SizingExampleXML3
|
---|
2 | constant String hString = "multiTank.tankHeights" "XML element name";
|
---|
3 | constant String fName = "/tmp/multiTank1.xml" "XML file name";
|
---|
4 | final parameter Integer n = readArraySize1D(hString, fName) "Array size";
|
---|
5 | parameter Real heightVector[n] = readRealArray1D(hString, fName, n) "Array parameter";
|
---|
6 | function readArraySize1D "Read array size"
|
---|
7 | input String hString "XML element name";
|
---|
8 | input String fName "XML file name";
|
---|
9 | output Integer n "Array size";
|
---|
10 | protected
|
---|
11 | ExternData.Types.ExternXMLFile extObj = ExternData.Types.ExternXMLFile(fName, verboseRead=true) "External XML file object";
|
---|
12 | algorithm
|
---|
13 | n := ExternData.Functions.XML.getArraySize1D(hString, extObj);
|
---|
14 | end readArraySize1D;
|
---|
15 | function readRealArray1D "Read array"
|
---|
16 | input String hString "XML element name";
|
---|
17 | input String fName "XML file name";
|
---|
18 | input Integer n "Array size";
|
---|
19 | output Real arr[n] "Array";
|
---|
20 | protected
|
---|
21 | ExternData.Types.ExternXMLFile extObj = ExternData.Types.ExternXMLFile(fName, verboseRead=true) "External XML file object";
|
---|
22 | algorithm
|
---|
23 | arr := ExternData.Functions.XML.getRealArray1D(hString, n, extObj);
|
---|
24 | end readRealArray1D;
|
---|
25 | annotation(uses(ExternData(version="2.5.0")));
|
---|
26 | end SizingExampleXML3;
|
---|