Commit Graph

1380 Commits

Author SHA1 Message Date
iamthad
3187dd9012 Replace std::endl with "\n" in SIE (#772)
std::endl flushes the output stream. The SIE functions were using it
multiple times per variable. This can have significant performance
impacts on file I/O.

In testing, the S_sie.resource file for SIM_parachute was flushed over
14000 times, each resulting in a separate write system call. With this
patch, only ~40 write calls were performed, and writing the file took
~1/3 as long.

For more information, see
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Rio-endl
2019-05-13 14:31:46 -05:00
Derek Bankieris
3e3bc02cd2 Correct TRICK_CONVERT_SWIG_FLAGS in Makefile_swig
Fixes #770
2019-05-10 15:30:17 -05:00
Derek Bankieris
e6509df362 Improve scoping of SWIG %template directives
Refs #768 & Refs #769
2019-05-10 15:19:33 -05:00
Scott Fennell
cbc37dd67e
Update README.md 2019-05-09 09:04:39 -05:00
dbankieris
ef1d105bfb
Improve parsing of base-clauses in S_define
A base-clause is the stuff in an inheritance list after the colon in a
class declaration.
https://en.cppreference.com/w/cpp/language/derived_class

Closes #723
Closes #733
2019-05-08 08:41:50 -05:00
Derek Bankieris
4368d412b2 Add C functions for setting MC slave output dir
Refs #763
2019-05-06 12:03:26 -05:00
Derek Bankieris
7d7b461b38 Allow specification of MC slave output directory
Refs #763
2019-05-06 11:32:12 -05:00
Scott Fennell
3364cd3836
Merge pull request #750 from nasa/fix-clean-bin
#507 clean remove 2 data products binaries from bin
2019-05-06 09:33:12 -05:00
Alex Lin
52b30d5e2c Merge branch 'master' of https://github.com/nasa/trick 2019-05-03 09:15:16 -05:00
Alex Lin
4d82c1589d Python init code does not work when using SWIG 4.0 #760
Forgot to reverse the import order for modules users are adding to
namespaces.  Interesting, the unit tests only failed on the Mac for
this.
2019-05-03 09:14:05 -05:00
Alex Lin
e6abfd21b8 Log frame scheduling time if not running real-time. #762
If real-time is off, we exit the rt_monitor function early.  The frame
scheduled time was calculated after the exit call.  Moved the frame
scheduled time calcuation before the exit.
2019-05-02 16:36:35 -05:00
Alex Lin
0ec37858d0 Merge branch 'python_namespace' 2019-05-02 08:40:18 -05:00
Alex Lin
a29564bd9c Python init code does not work when using SWIG 4.0 #760
Looks like the way modules are loaded changed a little with SWIG 4.0. So I
changed the order we include everything in __init__.py.  We include all
of the c++ python modules first now instead of having them read in from
the python code itself.  Basically we include the files like this in this order

import _m<hash>
from m<hash> import *
2019-05-02 08:20:06 -05:00
dbankieris
16fef4eaa9
Merge pull request #759 from nmerlene/master
Python 3 Compatibility for variable_server.py
2019-04-25 07:39:45 -05:00
Derek Bankieris
d5544a5991 Correct decimal formatting for ints in TrickView
3032aae added fixed-width to binary formats. Looks like I modified
TVInteger's Decimal format instead of Binary.

Refs #661
2019-04-25 07:29:58 -05:00
Penn, John M 047828115
7ccdade441 Fix S_overrides.mk #756 2019-04-24 18:50:08 -05:00
Penn, John M 047828115
cebfc174ae Don't compile and link HTTP server by default Ref #756 2019-04-24 18:29:50 -05:00
nmerlene
38bfdf2a54
Convert string to bytes in variable_server.py for Python 3
* Method socket.sendall() expects bytes to be sent, rather than a string
* Python 3 stores text strings as unicode (not ASCII) by default
* Therefore, strings must be explicitly converted to bytes for Python 3 compatibility
* This works for both Python 2 and Python 3 (tested on Python 2.7, Python 3.6, and Python 3.7)
2019-04-24 15:45:06 -05:00
Penn, John M 047828115
b029fae692 Add an experimental mongoose-based embedded web server to SIM_cannon_numeric #756 2019-04-17 17:26:48 -05:00
Penn, John M 047828115
0f037e6817 Update trickTypeCharString() for STLs, so their names can be generated. #755 2019-04-17 16:43:12 -05:00
Penn, John M 047828115
05e9535518 Add MemoryManager methods to generate JSON for allocation info. #755 2019-04-17 16:35:29 -05:00
Derek Bankieris
497f50e152 Immediately add file to md5s after check
Fixes #753
2019-04-11 08:55:41 -05:00
Derek Bankieris
bde2ec5158 Lift get_paths into its own module
Fixes #752
2019-04-09 13:28:16 -05:00
Derek Bankieris
4611db2e92 Merge branch 'master' of https://github.com/nasa/trick 2019-04-09 13:20:01 -05:00
Derek Bankieris
f1ef983143 Change unbold ascii escape sequence from 21 to 22
21m as unbold is not well supported and sometimes causes
double-underline instead
2019-04-09 13:18:02 -05:00
Scott Fennell
5e0fdc824c
Merge pull request #744 from nasa/VERBOSE-synonym
Verbose synonym
2019-04-02 13:35:08 -05:00
Scott Fennell
49e243b54a
Merge branch 'master' into VERBOSE-synonym 2019-04-02 13:34:52 -05:00
Alex Lin
d33eb22d97
Merge pull request #748 from abrogley/add-trick-mc-to-swig-shortcuts
Create the shortcut trick.mc_add_variable.
2019-04-02 13:04:28 -05:00
Alex Lin
5e445f1a37
Merge pull request #742 from nasa/python_namespace
Python namespace back from the dead
2019-04-02 13:03:32 -05:00
Scott Fennell
4f9c51b2cb #507 clean remove 2 data products binaries from bin 2019-03-29 13:41:24 -05:00
Alex Lin
6a84ae548b Merge branch 'master' of https://github.com/nasa/trick 2019-03-26 17:10:16 -05:00
Alex Lin
b29a117902 ICG does not compile with LLVM 8.0 #747
getLocEnd got changed to getEndLoc.  Made a LLVM version based macro
to handle both.
2019-03-26 17:03:11 -05:00
Aaron Brogley
e52449309c Create the shortcut trick.mc_add_variable.
This is shorter than the existing trick_mc.mc.add_variable and is
accessible through the trick namespace with 'import trick'.
2019-03-26 16:58:27 -05:00
dbankieris
266a956471
Merge pull request #743 from mrjaperez/master
Support static/dynamic libraries in Trickification
2019-03-25 14:24:10 -05:00
Derek Bankieris
951bee52c0 Use existing variables for LD and c++
This is why we have code reviews!
2019-03-25 11:33:50 -05:00
Derek Bankieris
4146834f10 Support static/dynamic libraries in Trickification
Update documentation
Change TRICK_LIB_BUILD_TYPE to TRICKIFY_BUILD_TYPE
Remove support for linking in arbitrary objects
Conform logging to existing pattern
2019-03-25 10:49:34 -05:00
Scott Fennell
644a9a0e00 #741 add VERBOSE synonym everywhere 2019-03-21 09:28:52 -05:00
Scott Fennell
422d5ee2ac #741 add VERBOSE synonym 2019-03-20 17:32:29 -05:00
Jose Perez
787f2c7dc2 Support Shared and Static library. Optionally package trickified generated code and source code in to one library. 2019-03-20 15:32:11 -05:00
Alex Lin
41f151f2ee Adding doxygen style python module desgnation.
Adding another file to example that shows 2 files in same namespace.
2019-03-14 09:33:50 -05:00
Alex Lin
62948308b6 Adding back a lost capability, but better this time. The user can now
specify a python module name where the class and functions will be
visible in python.  With care the user can mimic the C++ namespaces their
models reside in, but it isn't perfect nor automatic.  It's still pretty
neat.
2019-03-13 16:17:08 -05:00
Penn, John M 047828115
be4372a831 Change dashes in JSON identifiers to underscores. ref #678 2019-03-07 10:44:56 -06:00
Penn, John M 047828115
531a94173e Fix output going to the wrong stream. ref #678 2019-03-07 10:43:40 -06:00
Alex Lin
7ef86c92c0
Merge pull request #740 from pappyvw/trick-CP-dashC-option
Give trick-CP the same -C/--directory option that 'make' has.
2019-03-05 07:28:40 -06:00
Pappy Van Winkle
a44014c0a3 Give trick-CP the same -C/--directory option that 'make' has.
Now one can do the following command:
     path/to/trick-CP -C path/to/SIM_example

without first having to cd to the path that contains the S_define.
2019-02-28 21:26:23 -06:00
Scott Fennell
833f7efe82
Merge pull request #739 from nasa/Derek's_Warning
#738 add Derek's warning
2019-02-28 09:03:21 -06:00
Scott Fennell
941a94d9ad never assume that syntax from github suggestions is correct 2019-02-28 08:38:47 -06:00
dbankieris
3965b87499
#738 use real division and static cast (suggestion)
Co-Authored-By: spfennell <spfennell@gmail.com>
2019-02-28 08:27:13 -06:00
Scott Fennell
08d0ea5d40 #738 add Derek's warning 2019-02-27 16:00:03 -06:00
dbankieris
6eeb4cee80
Merge pull request #736 from nasa/688
Include Trickified classes/enums in S_sie.resource
2019-02-20 14:13:12 -06:00