diff --git a/ExternData/Examples/package.mo b/ExternData/Examples/package.mo index 01bdddc..2bba75c 100644 --- a/ExternData/Examples/package.mo +++ b/ExternData/Examples/package.mo @@ -13,7 +13,7 @@ package Examples "Test examples" model CSVTest "CSV file read test" extends Modelica.Icons.Example; - inner parameter ExternData.CSVFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.csv")) "CSV file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.CSVFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.csv")) "CSV file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); final parameter Integer m = dataSource.getArrayRows2D() "Number of rows in 2D array"; Modelica.Blocks.Sources.TimeTable timeTable(table=dataSource.getRealArray2D(3, 2)) annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); annotation(experiment(StopTime=1), @@ -23,7 +23,7 @@ package Examples "Test examples" model INITest "INI file read test" extends Modelica.Icons.Example; parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); - inner parameter ExternData.INIFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.ini")) "INI file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.INIFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.ini")) "INI file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal("gain.k", setName)) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString("gain.k", setName))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); @@ -37,7 +37,7 @@ package Examples "Test examples" model JSONTest "JSON file read test" extends Modelica.Icons.Example; parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); - inner parameter ExternData.JSONFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.json")) "JSON file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.JSONFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.json")) "JSON file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal(setName + ".gain.k")) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString(setName + ".gain.k"))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); @@ -52,7 +52,7 @@ package Examples "Test examples" model MATTest "MAT-file read test" extends Modelica.Icons.Example; - inner parameter ExternData.MATFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test_v7.3.mat")) "MAT file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.MATFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test_v7.3.mat")) "MAT file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); final parameter Integer m = dataSource.getArrayRows2D("table1") "Number of rows in 2D array"; Modelica.Blocks.Sources.TimeTable timeTable(table=dataSource.getRealArray2D("table1", 3, 2)) annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); annotation(experiment(StopTime=1), @@ -61,7 +61,7 @@ package Examples "Test examples" model SSVTest "SSV file read test" extends Modelica.Icons.Example; - inner parameter ExternData.SSVFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test_v2.ssv")) "SSV file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.SSVFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test_v2.ssv")) "SSV file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal("gain.k")) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); final parameter Integer m = dataSource.getArrayRows2D("table1") "Number of rows in 2D array"; @@ -75,34 +75,12 @@ package Examples "Test examples" model XLSTest "Excel XLS file read test" extends Modelica.Icons.Example; parameter String sheetName = "set1" "Excel sheet name" annotation(Evaluate=true, choices(choice="set1" "First Excel sheet", choice="set2" "Second Excel sheet")); - inner parameter ExternData.XLSFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xls")) "XLS file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XLSFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xls")) "XLS file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal("B2", sheetName)) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString("B2", sheetName))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); final parameter Integer m = dataSource.getArrayRows2D("table1") "Number of rows in 2D array"; Modelica.Blocks.Sources.TimeTable timeTable(table=dataSource.getRealArray2D("A1", "table1", 3, 2)) annotation(Placement(transformation(extent={{-50,30},{-30,50}}))); - final parameter Real sumB = computeColSum(dataSource, "B") "Sum of column B"; - function computeColSum "Compute column sum" - extends Modelica.Icons.Function; - input ExternData.XLSFile dataSource "Excel XLS file record"; - input String col = "A" "Column"; - input String sheetName = "" "Sheet name"; - input Integer startRow = 2 "Start row"; - input Integer endRow = ExternData.Functions.XLS.getArrayRows2D(sheetName=sheetName, xls=dataSource.xls) "End row"; - output Real colSum "Column sum"; - protected - Real val; - Boolean exist; - algorithm - colSum := 0.0; - for row in startRow:endRow loop - (val, exist) := ExternData.Functions.XLS.getReal(cellAddress=col + String(row), sheetName=sheetName, xls=dataSource.xls); - if exist then - colSum := colSum + val; - end if; - end for; - annotation(Documentation(info="

This function computes the column sum of a given column and sheet of an Excel XLS file.

")); - end computeColSum; equation connect(clock.y,gain1.u) annotation(Line(points={{-29,70},{-17,70}}, color={0,0,127})); connect(clock.y,gain2.u) annotation(Line(points={{-29,70},{-22,70},{-22,40},{-17,40}}, color={0,0,127})); @@ -113,34 +91,12 @@ package Examples "Test examples" model XLSXTest "Excel XLSX file read test" extends Modelica.Icons.Example; parameter String sheetName = "set1" "Excel sheet name" annotation(Evaluate=true, choices(choice="set1" "First Excel sheet", choice="set2" "Second Excel sheet")); - inner parameter ExternData.XLSXFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xlsx")) "XLSX file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XLSXFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xlsx")) "XLSX file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal("B2", sheetName)) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString("B2", sheetName))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); final parameter Integer m = dataSource.getArrayRows2D("table1") "Number of rows in 2D array"; Modelica.Blocks.Sources.TimeTable timeTable(table=dataSource.getRealArray2D("A1", "table1", 3, 2)) annotation(Placement(transformation(extent={{-50,30},{-30,50}}))); - final parameter Real sumB = computeColSum(dataSource, "B") "Sum of column B"; - function computeColSum "Compute column sum" - extends Modelica.Icons.Function; - input ExternData.XLSXFile dataSource "Excel XLSX file record"; - input String col = "A" "Column"; - input String sheetName = "" "Sheet name"; - input Integer startRow = 2 "Start row"; - input Integer endRow = ExternData.Functions.XLSX.getArrayRows2D(sheetName=sheetName, xlsx=dataSource.xlsx) "End row"; - output Real colSum "Column sum"; - protected - Real val; - Boolean exist; - algorithm - colSum := 0.0; - for row in startRow:endRow loop - (val, exist) := ExternData.Functions.XLSX.getReal(cellAddress=col + String(row), sheetName=sheetName, xlsx=dataSource.xlsx); - if exist then - colSum := colSum + val; - end if; - end for; - annotation(Documentation(info="

This function computes the column sum of a given column and sheet of an Excel XLSX file.

")); - end computeColSum; equation connect(clock.y,gain1.u) annotation(Line(points={{-29,70},{-17,70}}, color={0,0,127})); connect(clock.y,gain2.u) annotation(Line(points={{-29,70},{-22,70},{-22,40},{-17,40}}, color={0,0,127})); @@ -151,7 +107,7 @@ package Examples "Test examples" model XMLTest "XML file read test" extends Modelica.Icons.Example; parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); - inner parameter ExternData.XMLFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XMLFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal(setName + ".gain.k")) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString(setName + ".gain.k"))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); @@ -167,7 +123,7 @@ package Examples "Test examples" model XMLTestInnerOuter "XML file read test (utilizing inner/outer hierarchy)" extends Modelica.Icons.Example; inner parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); - inner parameter ExternData.XMLFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XMLFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); model Component outer parameter String setName "Parameter set name"; extends ExternData.Interfaces.DataSourceModel; @@ -192,7 +148,7 @@ package Examples "Test examples" extends Modelica.Icons.Example; parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); parameter String fileName = Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml") "File where external data is stored"; - inner parameter ExternData.XMLFile dataSource(fileName=fileName) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XMLFile dataSource(fileName=fileName) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal(setName + ".gain.k")) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString(setName + ".gain.k"))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); @@ -209,7 +165,7 @@ package Examples "Test examples" model XMLTestXPath "XML file read test (utilizing XPath expressions)" extends Modelica.Icons.Example; parameter String setName = "set1" "Parameter set name" annotation(Evaluate=true, choices(choice="set1" "First parameter set", choice="set2" "Second parameter set")); - inner parameter ExternData.XML2File dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.XML2File dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/test.xml")) "XML file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Math.Gain gain1(k=dataSource.getReal("//" + setName + "/gain/k")) annotation(Placement(transformation(extent={{-15,60},{5,80}}))); Modelica.Blocks.Math.Gain gain2(k=Modelica.Utilities.Strings.scanReal(dataSource.getString("//" + setName + "/gain/k"))) annotation(Placement(transformation(extent={{-15,30},{5,50}}))); Modelica.Blocks.Sources.ContinuousClock clock annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); @@ -224,7 +180,7 @@ package Examples "Test examples" model TIRTest "TIR file read test" extends Modelica.Icons.Example; - inner parameter ExternData.TIRFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/sample.tir")) "TIR file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + inner ExternData.TIRFile dataSource(fileName=Modelica.Utilities.Files.loadResource("modelica://ExternData/Resources/Examples/sample.tir")) "TIR file" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); Modelica.Blocks.Sources.Constant pcx1(k=dataSource.getReal("PCX1", "LONGITUDINAL_COEFFICIENTS")) annotation(Placement(transformation(extent={{-50,60},{-30,80}}))); Modelica.Blocks.Sources.Constant pcy1(k=dataSource.getReal("PCY1", "LATERAL_COEFFICIENTS")) annotation(Placement(transformation(extent={{-50,30},{-30,50}}))); annotation(experiment(StopTime=1), diff --git a/ExternData/package.mo b/ExternData/package.mo index a706125..4d94be3 100644 --- a/ExternData/package.mo +++ b/ExternData/package.mo @@ -32,7 +32,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Documentation(info="

Library ExternData is a Modelica utility library to access data stored in CSV, INI, JSON, MATLAB MAT, SSV (System Structure Parameter Values), TIR, Excel XLS/XLSX and XML files.

")); end UsersGuide; - record CSVFile "Read data values from CSV file" + model CSVFile "Read data values from CSV file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="Comma-separated values files (*.csv);;Text files (*.txt)", @@ -58,7 +58,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end CSVFile; - record INIFile "Read data values from INI file" + model INIFile "Read data values from INI file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="INI files (*.ini);;Configuration files (*.cfg;*.conf;config.txt);;Text files (*.txt)", @@ -83,7 +83,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end INIFile; - record JSONFile "Read data values from JSON file" + model JSONFile "Read data values from JSON file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="JSON files (*.json)", @@ -120,7 +120,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end JSONFile; - record MATFile "Read data values from MATLAB MAT file" + model MATFile "Read data values from MATLAB MAT file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="MATLAB MAT files (*.mat)", @@ -144,7 +144,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end MATFile; - record SSVFile "Read data values from SSV file" + model SSVFile "Read data values from SSV file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="SSV files (*.ssv;*.xml)", @@ -176,7 +176,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end SSVFile; - record XLSFile "Read data values from Excel XLS file" + model XLSFile "Read data values from Excel XLS file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="Excel files (*.xls)", @@ -206,7 +206,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end XLSFile; - record XLSXFile "Read data values from Excel XLSX file" + model XLSXFile "Read data values from Excel XLSX file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="Excel files (*.xlsx)", @@ -235,7 +235,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end XLSXFile; - record XMLFile "Read data values from XML file" + model XMLFile "Read data values from XML file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="XML files (*.xml)", @@ -266,7 +266,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end XMLFile; - record XML2File "Read data values from XML file (utilizing XPath expressions)" + model XML2File "Read data values from XML file (utilizing XPath expressions)" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="XML files (*.xml)", @@ -298,7 +298,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR Text(textColor={0,0,255},extent={{-150,150},{150,110}},textString="%name")})); end XML2File; - record TIRFile "Read data values from TIR file" + model TIRFile "Read data values from TIR file" parameter String fileName = "" "File where external data is stored" annotation(Dialog( loadSelector(filter="TIR files (*.tir)", @@ -1451,7 +1451,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package Interfaces "Interfaces" extends Modelica.Icons.InterfacesPackage; - record DataSource "Place holder for file based data source" + model DataSource "Place holder for file based data source" extends Modelica.Icons.Record; annotation( Documentation(info="

Place holder record that can be used as generic outer parameter instance in component models to reference an implemented inner parameter instance of CSVFile, INIFile, JSONFile, MATFile, SSVFile, XLSFile, XLSXFile, XMLFile, XML2File, or TIRFile.

See Examples.XMLTest2.Component for an example.

"), @@ -1461,18 +1461,18 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR end DataSource; partial block DataSourceBlock "Base block containing an outer place holder data source" - outer parameter ExternData.Interfaces.DataSource dataSource "File based data source" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + outer ExternData.Interfaces.DataSource dataSource "File based data source" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); annotation(Documentation(info="

Partial base block that declares an outer parameter instance of generic record type DataSource.

")); end DataSourceBlock; partial model DataSourceModel "Base model containing an outer place holder data source" - outer parameter ExternData.Interfaces.DataSource dataSource "File based data source" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); + outer ExternData.Interfaces.DataSource dataSource "File based data source" annotation(Placement(transformation(extent={{-80,60},{-60,80}}))); annotation(Documentation(info="

Partial base model that declares an outer parameter instance of generic record type DataSource.

")); end DataSourceModel; package CSV "CSV file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for CSV file" + partial model Base "Interface for CSV file" replaceable function getRealArray2D = CSV.getRealArray2D "Get 2D Real values from CSV file" annotation(Documentation(info="")); replaceable function getArraySize2D = CSV.getArraySize2D "Get the size of a 2D array in a CSV file" annotation(Documentation(info="")); replaceable function getArrayRows2D = CSV.getArrayRows2D "Get first dimension of 2D array in CSV file" annotation(Documentation(info="")); @@ -1523,7 +1523,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package INI "INI file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for INI file and TIR file" + partial model Base "Interface for INI file and TIR file" replaceable function getReal = INI.getReal "Get scalar Real value from INI file" annotation(Documentation(info="")); replaceable function getInteger = INI.getInteger "Get scalar Integer value from INI file" annotation(Documentation(info="")); replaceable function getBoolean = INI.getBoolean "Get scalar Boolean value from INI file" annotation(Documentation(info="")); @@ -1581,7 +1581,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package JSON "JSON file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for JSON file" + partial model Base "Interface for JSON file" replaceable function getReal = JSON.getReal "Get scalar Real value from JSON file" annotation(Documentation(info="")); replaceable function getRealArray1D = JSON.getRealArray1D "Get 1D array Real value from JSON file" annotation(Documentation(info="")); replaceable function getRealArray2D = JSON.getRealArray2D "Get 2D array Real value from JSON file" annotation(Documentation(info="")); @@ -1745,7 +1745,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package MAT "MAT file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for MAT file" + partial model Base "Interface for MAT file" replaceable function getRealArray2D = MAT.getRealArray2D "Get 2D Real values from MAT file" annotation(Documentation(info="")); replaceable function getStringArray1D = MAT.getStringArray1D "Get 1D String values from MAT file" annotation(Documentation(info="")); replaceable function getArraySize2D = MAT.getArraySize2D "Get the size of a 2D array in a MAT file" annotation(Documentation(info="")); @@ -1815,7 +1815,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package SSV "SSV file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for SSV file" + partial model Base "Interface for SSV file" replaceable function getReal = SSV.getReal "Get scalar Real value from SSV file" annotation(Documentation(info="")); replaceable function getRealArray1D = SSV.getRealArray1D "Get 1D Real values from SSV file" annotation(Documentation(info="")); replaceable function getRealArray2D = SSV.getRealArray2D "Get 2D Real values from SSV file" annotation(Documentation(info="")); @@ -1930,7 +1930,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package XLS "Excel XLS file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for Excel XLS file" + partial model Base "Interface for Excel XLS file" replaceable function getReal = XLS.getReal "Get scalar Real value from Excel XLS file" annotation(Documentation(info="")); replaceable function getRealArray2D = XLS.getRealArray2D "Get 2D Real values from Excel XLS file" annotation(Documentation(info="")); replaceable function getInteger = XLS.getInteger "Get scalar Integer value from Excel XLS file" annotation(Documentation(info="")); @@ -2045,7 +2045,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package XLSX "Excel XLSX file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for Excel XLSX file" + partial model Base "Interface for Excel XLSX file" replaceable function getReal = XLSX.getReal "Get scalar Real value from Excel XLSX file" annotation(Documentation(info="")); replaceable function getRealArray2D = XLSX.getRealArray2D "Get 2D Real values from Excel XLSX file" annotation(Documentation(info="")); replaceable function getInteger = XLSX.getInteger "Get scalar Integer value from Excel XLSX file" annotation(Documentation(info="")); @@ -2160,7 +2160,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package XML "XML file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for XML file" + partial model Base "Interface for XML file" replaceable function getReal = XML.getReal "Get scalar Real value from XML file" annotation(Documentation(info="")); replaceable function getRealArray1D = XML.getRealArray1D "Get 1D Real values from XML file" annotation(Documentation(info="")); replaceable function getRealArray2D = XML.getRealArray2D "Get 2D Real values from XML file" annotation(Documentation(info="")); @@ -2263,7 +2263,7 @@ package ExternData "Library for data I/O of CSV, INI, JSON, MATLAB MAT, SSV, TIR package XML2 "XML2 file interfaces" extends Modelica.Icons.InterfacesPackage; - partial record Base "Interface for XML2 file" + partial model Base "Interface for XML2 file" replaceable function getReal = XML2.getReal "Get scalar Real value from XML file" annotation(Documentation(info="")); replaceable function getRealArray1D = XML2.getRealArray1D "Get 1D Real values from XML file" annotation(Documentation(info="")); replaceable function getRealArray2D = XML2.getRealArray2D "Get 2D Real values from XML file" annotation(Documentation(info=""));