[root]/c_runtime/java_interface/src/org/openmodelica/test
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 31 (100.0%) | 899 (100.0%) | 29.0 |
sjoelund.se | 23 (74.2%) | 899 (100.0%) | 39.0 |
adrpo | 8 (25.8%) | 0 (0.0%) | 0.0 |
- GOT RID OF the old trunk/c_runtime and old templates SimCodeC.tpl/SimCodeFMU.tpl
- HIGHLY RECOMMENDED make clean
- renamed SimCodeXXX.tpl CodegenXXX.tpl
- merged the needed things from SimCodeC.tpl into CodegenQSS.tpl.
- all tests except the usual mishaps go.
- targeted all trunk/c_runtime references used in
Makefiles / C (Qt OMPlot) / Other files to their SimulationRuntime/ counterparts.
0 lines of code changed in 8 files:
Java Interface:
- When handling uniontypes, we now add the _UT suffix so we can compile e.g. Absyn.mo definitions to a jar-file on the Windows platform.
- Removed the dependency on Sun JreSocketFactory (we won't need long CORBA timeouts if we send long strings through files anyway).
53 lines of code changed in 3 files:
- Changes to the OMC-Java interface (Java code)
- Replaced the ANTLR grammar for parsing the CORBA communication
+ Max heap size reduced by 66% (down to 1GB from 3GB on 64-bit platforms)
+ Time to parse reduced to 33-50% of the original time taken (depending on typed or untyped parsing)
+ Added proper typed parsing also for list,tuple and Option
- Added the TypeSpec.java class to represent complex types fully
- Added missing JreSocketFactory
- Parsing an AST with type information is no longer done in two phases
- Updated the templated to generate jar files to reflect the changes above
- MSL 3.1 can now be parsed fully, with full type information
+ Typecasting needs to be done for tuples due to Java weaknesses,
but no longer using ModelicaAny.cast - standard (T)myTuple.get(0) should work.
+ The string is possibly too large for 32-bit OpenModelica to handle.
However, it is no longer manipulated within OpenModelica, so it might accept it. Needs to be tested.
67 lines of code changed in 7 files:
- Changed to the OMC-Java interface (Java code)
+ Added printToBuffer to all ModelicaObjects so toString() is almost instant even for large strings
+ Changed the interface of ModelicaRecord slightly
- We now cache field names and types in order to reduce the memory consumption of an AST by ~75%
- All records now need to have all fieldnames and types set when created
+ OMCorba.g now generates line and column numbers for all errors
55 lines of code changed in 5 files:
- Merged c_runtime from Bootstrapping
- Fixed simulation_result.cpp performance issues (<< endl flushes the buffer, \n does not)
- Added the Java-specific runtimes (C and Java)
- Changes to read_write.{c,h} for record-in-record, NORETCALL and MetaModelica types
724 lines of code changed in 8 files: