Commit Graph

331 Commits

Author SHA1 Message Date
Scott Fennell
9be53ebb9b #776 default restore_stls to false 2019-06-03 09:44:35 -05:00
Scott Fennell
7f7adca0ac #776 .dat files don't call restore_stls in checkpoint restore 2019-06-01 10:48:31 -05:00
dbankieris
b694d5412b
Merge pull request #765 from nasa/763
Add ability to specify MC slave output directory
2019-05-29 14:29:04 -05:00
Alex Lin
7338dd32d3 Merge branch 'master' of https://github.com/nasa/trick 2019-05-14 09:09:13 -05:00
Alex Lin
fedf5bec72 Reduce number of real-time plots per page to 6 #775
Changed the hard coded 8 plots per page to a user settable number.
Defaulted the number to 6.
2019-05-14 09:08:11 -05:00
jmpenn
3f35388b49
Change std::endl to linefeed as appropriate. (#773)
* Fix endl issue in variable server JSON generation. Ref #766

* Change std::endl to line feed as appropraite. #766

* Change std::endl to line feed in MemoryManager as appropriate. #766

* Change std::endl to linefeed as appropriate. #766

* Change std::endl to line feed as appropriate in JSONVariableServer. #766

* Change std::endl to line feed as appropriate in still more files. #766
2019-05-13 16:05:01 -05:00
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
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
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
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
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
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
jmpenn
b9278c4a72
Add capability to list current variable server connections in JSON re… (#732)
* Add capability to list current variable server connections in JSON ref #678

* Add client tag to the connection info.

* Name consistency tweak in generation of JSON variable-server connection list. ref #732

* Add client IP address and port. ref #732

* Output should be going to the stringstream, not std::cout. Ref #732
2019-02-18 17:11:41 -06:00
Shahzad Lone
7428a98191
Undo spacing It was not suppose to be done on this request 2019-01-28 22:21:05 -05:00
Shahzad Lone
b7e400d0db
Remove spacing that makes travis build happy (even though i didn't introduce this ?) 2019-01-28 22:14:02 -05:00
Derek Bankieris
247fcc370d Add accessor for MonteVarRandom::randist
Closes #715
2018-12-04 11:57:18 -06:00
Derek Bankieris
0394867dfd Add MonteCarlo::variables accessor
Closes #713
2018-12-04 10:25:03 -06:00
jmpenn
ca35092c1d
Fix lockup when running Valgrind. Ref #685 (#699) 2018-11-09 13:40:11 -06:00
Scott Fennell
66b3d984ff Merge branch 'master' into scan-build 2018-11-06 11:24:09 -06:00
Scott Fennell
21c01a5454 scan-build changes
This reverts commit e86027f825.
2018-11-06 11:23:12 -06:00
Scott Fennell
d2e81257c2 #687 do not warn or convert unit -- 2018-10-30 10:40:46 -05:00
Scott Fennell
e86027f825 revert scan-build changes, need further testing before merge 2018-10-22 15:11:29 -05:00
Scott Fennell
389e2837fc add -std=c++11 to MonteCarlo 2018-10-22 11:40:55 -05:00
Scott Fennell
bc35e64406
Merge pull request #673 from nasa/#scan-build
#671 fix all non memory manager scan-build bugs.
2018-10-20 13:16:35 -05:00
Pappy Van Winkle
121fa84081 Use correct format specifiers.
Used http://www.cplusplus.com/reference/cstdio/printf/ as a reference.
2018-10-11 22:52:04 -05:00
Pappy Van Winkle
af2575da5b Remove all unused variables (style warning). 2018-10-11 22:05:50 -05:00
Scott Fennell
5b63559312 fix error message syntax errors 2018-10-03 15:31:22 -05:00
Scott Fennell
53886fb54d add else block for code clarity and to aid static analysis JITInputFile.cpp 2018-10-03 10:49:11 -05:00
Scott Fennell
8f20710761 replace garbage value on enum error PythonPrint.cpp 2018-10-03 10:45:15 -05:00
Scott Fennell
d1957c650b handle garbage values/invalid input ClassicCheckPointAgent 2018-10-03 10:34:11 -05:00
Scott Fennell
e4dcd42b2b fix unreachable code MonteVarFile.cpp 2018-10-01 16:22:27 -05:00
Scott Fennell
28863c58a6 remove memory leaks and garbage return values TrickBinary.cpp 2018-10-01 15:55:04 -05:00
Scott Fennell
605f5d0f6d remove dead assignment DataRecordGroup.cpp 2018-10-01 14:16:19 -05:00
Scott Fennell
0b2218e449 remove dead assignment IPPython.cpp 2018-10-01 13:55:02 -05:00
Scott Fennell
424043b146 remove 'delete this' double delete in JSONVariableServerThread destructor 2018-10-01 13:33:51 -05:00
Scott Fennell
2cdd4bf380 free memory leaks MonteVarFile.cpp 2018-10-01 13:24:37 -05:00
Scott Fennell
7b3b47aa39 init value and style change VariableServerListenThread.cpp 2018-10-01 10:26:17 -05:00
Scott Fennell
2c43321076 remove dead assignments VariableServerThread_loop 2018-10-01 10:13:39 -05:00
Scott Fennell
53f3b308f5 Merge branch 'master' of https://github.com/nasa/trick 2018-09-25 10:41:35 -05:00
Scott Fennell
77e0e73b3f various static analyser bug fixes 2018-09-25 10:41:14 -05:00
jmpenn
fccf32093b
Explicitly specify void arg for C functions that take no arguments. (#670)
* Clock empty args to void

* command_line func empty args to void

* DataRecord func empty args to void

* debug_pause func empty args to void

* echojobs func empty args to void

* ExternalApplication func empty args to void

* FrameLog func empty args to void

* MasterSlave func empty args to void

* MonteCarlo func empty args to void

* outdllist func proto empty args to void

* sie func empty args to void

* SimTime func empty args to void

* UnitTest func empty args to void

* var_server func empty args to void

* wcs func empty args to void
2018-09-19 11:25:04 -05:00
jmpenn
7b694931ef
Warning fixes (#658)
* Suppress expected, benign warnings from Bison and Flex generated code.

* Trick::MessageThreadedCout::thread_body should return NULL.
2018-08-16 16:02:11 -05:00
John M. Penn
3ff8fc6bc0 Fix enums in MonteCarlo_test.cpp. REF #650 2018-08-08 14:36:10 -05:00
jmpenn
84f67ef79f
Update all enums in MonteCarlo with prefixes, so as to not conflict with other enums. (#650) 2018-07-25 13:05:10 -05:00
Scott Fennell
a0eaf5b794 #624 Remove invalid delete in empty rec_buffer, checkpoint load no longer crashes. 2018-07-09 09:23:28 -05:00
Derek Bankieris
ed5a5426b1 Revert "Infer TRICK_HOME automatically"
This reverts commit 6e18294100.
Refs #637
2018-06-22 08:12:38 -05:00
Derek Bankieris
6e18294100 Infer TRICK_HOME automatically
Refs #358
2018-06-21 11:40:40 -05:00
jmpenn
882b568b86
Fix enums in MonteCarlo ExitStatus to less susceptible to conflict wi… (#628)
* Fix enums in MonteCarlo ExitStatus to less susceptible to conflict with other code. ref #609

* Add MC_ prefix to ExitStatus enums. Ref #609
2018-06-05 15:10:08 -05:00
Alex Lin
a8314b1497
Merge pull request #615 from nasa/framelog_fix
#588 top_of_frame and _end_of_frame fix for scheduled threads
2018-05-16 09:16:36 -05:00
Alex Lin
bf1ab16793
Merge pull request #617 from iamthad/pr_set_ptracer
Fix debugger attach when ptrace is restricted
2018-05-16 09:16:14 -05:00
Alex Lin
1e783fb49c When we are copying recorded data into a buffer we use a pointer to track the
buffer position.  This pointer wasn't used in DR_Changes_Step and was corrupting
the pointer initialization later in the write function.
2018-05-16 09:08:39 -05:00
anon
0212ed1650 #588 top_of_frame and _end_of_frame for child threads 2018-05-11 09:49:17 -05:00
Thadeus Fleming
54fe22684a Fix debugger attach when ptrace is restricted
Trick's backtrace or attach functionality fails on systems like Ubuntu
where the use of ptrace(2) is restricted. Where it is defined, use the
PR_SET_PTRACER prctl with the argument PR_SET_PTRACER_ANY to allow any
process to attach.
2018-05-10 07:19:30 -05:00
Alex Lin
2db059679b
Merge pull request #590 from abrogley/unit-test-return-code
Unit test exit code
2018-04-12 08:47:44 -05:00
jmpenn
9d7ba05c76
Implement Event condition and action lists as array of ptrs to objects rather than contiguous arrays. ref #587 (#597) 2018-04-10 17:17:21 -05:00
John M. Penn
ad05aad2d2 Merge branch 'master' into Issue595 2018-04-10 16:07:46 -05:00
Scott Fennell
af6727408c Limit log file size (#594)
* #585 create new method to set max file size for DataRecordGroups.  Needs testing and DRD interface function

* #585 dre implementation and other improvements, needs more work

* #585 update dre, add intf for drd max size functions. Still requires better comments, wiki updates, some refactoring, and testing

* #585 refactor trick-dre

* format trick-dre

* improve readability of dre output for set_max_file_size
2018-04-10 16:02:44 -05:00
John M. Penn
adf4482135 Update MemoryManager::delete_var to just issue a warning message when debug_level > 0. ref #595 2018-04-10 15:34:06 -05:00
John M. Penn
f3be6c9ec0 Add a Memory Manager Test and a MM input parser error msg fix. Ref #587 2018-04-06 15:18:33 -05:00
Aaron Brogley
0d7a082b2f Adding Trick Unit Test return code functionality. 2018-03-28 10:09:22 -05:00
Scott Fennell
f6fa9cdf3e #506 added additional check on run directory to prevent creation as defaul… (#566)
* added additional check on run directory to prevent creation as default output directory

* #506 edited error messages to include strerror
2018-03-14 15:18:37 -05:00
Derek Bankieris
37b1e02455 Replace perror with strerror
Instead of printing the numeric value of errno, how about we do
something helpful?
2018-03-08 14:50:13 -06:00
Derek Bankieris
1179007fa1 Infer TRICK_HOME automatically
Refs #358
2018-03-08 14:44:36 -06:00
Derek Bankieris
2ce53dadd2 Move pymods into share/trick
Fixes #574
2018-03-05 15:17:22 -06:00
Alex Lin
d97f482219 Allow the FrameLog class to use a different clock #571
Added a clock reference that to the FrameLog class that defaults
to the GetTimeOfDay clock.  This clock has fast access and is
non intrusive to real-time operations using a different clock.

Added a function to set the clock to something else if desired.
2018-02-28 17:33:09 -06:00
Derek Bankieris
27bf0b030b Dequeue timed-out runs if the slave later returns
Fixes #569
2018-02-28 14:13:05 -06:00
Derek Bankieris
8bdcd28631 Don't use TRICK_HOST_CPU in MonteCarlo SHH command
Fixes #564
2018-02-27 09:38:12 -06:00
Alex Lin
0936cee67e Separate verbosity levels for Monte Carlo dispatches and parametrizations #548
Changed verbosity check from INFORMATIONAL to ALL as requested.
2018-02-20 09:56:14 -06:00
Alex Lin
15bfd75b32 Don't resize active event array size with every operation #562
Started the active event allocation at 100 events.  If more are needed, we
add 100 allocations each time.  The array is never reduced in size if
events are deleted, events are moved to the front of the array and the
remaining elements are set to NULL.
2018-02-14 17:28:21 -06:00
Alex Lin
bc8d1a3796 The total overruns printout at sim exit prints the wrong parameter. #560
Changed the printout to print the total number of overruns.
2018-02-08 16:18:11 -06:00
Pappy Van Winkle
d7e8d48a8a Creating additional C-interface routines for UnitTest. #511 2018-02-03 19:56:08 -06:00
Alex Lin
8f76605f3b Create Message client that writes to screen on a separate thread #553
Created a new message class that will copy incoming messages to a
buffer area.  The buffer area is pre allocated during simulation
initialization.  On a separate thread the buffer area is written
to std::cout.
2018-01-25 15:59:19 -06:00
Alex Lin
c4b872c26e Don't start or wait for disabled threads in the executive #549
Added check to see if thread is enabled when starting it and waiting
for it to finish.  If it is disabled, skip it.
2018-01-23 09:37:02 -06:00
Alex Lin
12c7dbd4cf Trick's new variable server address is hard to debug if you don't know it changed #546
Created a second multicast socket to broadcast the sims variable server information
on the old address.
2018-01-19 16:49:08 -06:00
Alex Lin
d4ffa4002b Add NULL pointer check to remove_event. #545
Added the NULL pointer check and return immediately if the pointer is NULL.
2018-01-18 13:23:38 -06:00
Nick Kapliev
c8619dbea7 Fixed MonteCarlo EOF problem. #459 (#531)
* Added tests for MonteCarlo varfile eof line problem

* Remove redundant variables in MonteCarlo varfile test

* Fixed MonteCarlo varfile eof line problem. #459
2017-12-13 12:01:31 -06:00
Christopher LaChance
6184aa6cd9
Some unit test warnings addressed. (#515)
* Removed purple warnings from unit test compilation.

* "Fixed const corectness bug. Added more warning fixes."

* Fixed warning issue.

* Removed null checking and (char*) casting.

* Changed sizeof parameter to variable from data structure.
2017-11-29 15:35:16 -06:00
Christopher LaChance
0e772525c7 Fixed the MC 'file failed to open' error. 2017-11-22 12:51:34 -06:00
Christopher LaChance
21e3804638 Removed outdated MonteVarFile exception unit test. 2017-11-02 11:40:28 -05:00
Christopher LaChance
5ea826c67b Modified unit test to account for new logic. 2017-11-01 09:00:59 -05:00
Christopher LaChance
a68ea46f14
Fixed issue with open file being reopened. 2017-10-31 13:56:04 -05:00
Christopher LaChance
cf75a15be8 Removed redundant checks and this-> keywords. 2017-10-31 13:17:14 -05:00
Christopher LaChance
0dbdc2d7b9 Changed streampos comparison from NULL to 0. 2017-10-31 10:02:10 -05:00
Christopher LaChance
0a90c11541 Implemented a fix for multiple concurrent file handles. 2017-10-27 14:35:54 -05:00
Alex Lin
6271283c31 Revert Trick::Clock::clock_spin shouldn't call RELEASE() #489
Added a stub exec_get_rt_nap function in the test directory that
always returns false.  That is the cleanest way to satisfy the
call for the unit tests.
2017-10-20 15:03:31 -05:00
Christopher LaChance
c8f916e818 Merge pull request #488 from nasa/NonNumericValues
Non-numerical values can now be used in Monte Carlo data files.
2017-10-17 08:40:29 -05:00
Christopher LaChance
db4e0dd024 Returned brace style to K&R at John's behest. 2017-10-16 14:03:48 -05:00
Christopher LaChance
f81d7b0c16 Swapped line read in to std::getline(). 2017-10-16 12:56:45 -05:00
Alex Lin
56ddfab6a5 Revert Trick::Clock::clock_spin shouldn't call RELEASE() #489
Reverting change, adding back RELEASE call in clock_spin loop.
2017-10-16 10:39:31 -05:00
Christopher LaChance
ebe4174b5c Converted data file traversal from strtold to strtok. 2017-10-12 10:00:54 -05:00
Christopher LaChance
24894ea08a Merge pull request #487 from nasa/VariableInformation
Added additional variable information to the Monte_Runs data file.
2017-10-11 09:48:42 -05:00
Christopher LaChance
1efedefdf7 Added additional variable information to the Monte_Runs data file. 2017-10-10 11:12:33 -05:00
Alex Lin
8aa8f31e3d Frame logging for child threads not working. #484
Prepended "trick_" to the frame scheduled time variable name.
2017-10-06 10:22:38 -05:00
John M. Penn
db2f00cc4e Changed 'git' to 'trick-gte'. Ref #475 2017-09-13 14:46:28 -05:00
Thadeus Fleming
bf2759c5c0 Remove deprecated dynamic exception specifiers.
Resolves #461
2017-07-28 20:49:42 -05:00