Commit Graph

116 Commits

Author SHA1 Message Date
Alex Lin
952b899093 ICG doesn't handle inherited template classes correctly
When a template is in a namespace the type that is marked for the node containing
the full definition of the type is elaborated.  We need to go into
the elaborated name and get the underlying type.  Added code to do this
and tests to see if the type we are checking is itself a template or the
elaborated type is a template.  Sorry, this probably only makes sense to me.

refs #124
2015-09-18 13:18:05 -05:00
Alex Lin
57c76041f5 Get the value of a variable not parsed by SWIG in python
Wrote a python routine called get_value_by_ref_name that takes
a variable name string as an argument.  The string is passed to
ref_attributes to find the address and returns a REF2 structure.  The REF2
structure is passed to ref_to_value and the type and value of the variable
is returned in a structure.  We call vval_<type> to extract the raw value
from the structure and return that to python space.

Made a couple of other bug fixes in the FieldVisior and cpp input file
example found while investigating this issue.

refs #123
2015-09-18 09:03:24 -05:00
Alex Lin
7523c7b36c gxplot depends on Motif
Removed all motif dependencies.  I removed the motif based table renderer that
is duplicated here in gxplot.  The same table renderer is in fxplot with one
main difference, the one in fxplot actually renders tables, this one was not
working.  Also removed an error message dialog box that depended on
motif, replacing them with std::cerr calls. Removed -lXm when linking gxplot

refs #121
2015-09-17 16:58:29 -05:00
Alex Lin
80b8f99723 MTV/variable server crashes if checkpoint has less malfunctions then currently running sim
Added a case statement for the bad ref type to the binary data handler.  We handle a bad
ref as an integer, because that is what the sim sends us.  This fixes MTV.

refs #117
2015-09-14 15:11:20 -05:00
Derek Bankieris
c11f04644c refs #118
Removed unused VarClient.java.
2015-09-14 14:30:24 -05:00
Alex Lin
e58ba61d8e MTV/variable server crashes if checkpoint has less malfunctions then currently running sim
Did two things to stop the crash.  1.  When following an address path if we hit a NULL
address, stop processing and return the NULL.  2.  When trying to resolve addresses in
copy_sim_data, if a NULL address is returned then reset the reference to unresolved and
return a dummy value.

Need to fix MTV to handle dummy value returns.

refs #117
2015-09-14 11:33:11 -05:00
Alex Lin
94a99fb9ea Support new Trick comment tags
Changed parenthesis to curly brace... er I mean curly bracket.  Well too late, in
the code I called it curly brace. It's these "{}". Oh well.  Also found that the
dependency_only headers were not actually reading the dependencies.  Added the list
of dependency only files to the list of files to get dependencies from.

refs #114
2015-09-14 11:26:09 -05:00
Alex Lin
9b381f2edc Support new Trick comment tags
Added new doxygen style tags for truning on/off Trick attributes processing,
comment processing, and library dependencies.  Here are the tags we recognize

(@|\)trick_parse(everything|attributes|dependencies_only)
(@|\)trick_exclude_typename(class_name)
(@|\)trick_link_dependency(link_name)

refs #114
2015-09-10 14:50:22 -05:00
John M. Penn
f3ee79374b Delete obsolete .d files in the trick_models directory. 2015-08-31 19:24:56 -05:00
Alex Lin
80fb82e9f6 Add methods in base SimObject to turn whole sim object on/off.
Added enable/disable methods to the SimObject base class.  Used
enable/disable to be consistent with the JobData class that already
had these defined.

fixes #103
2015-08-05 15:17:32 -05:00
Alex Lin
119e7908d3 JITInput files not working
Added TRICK_SYSTEM_CXXFLAGS and TRICK_SYSTEM_CFLAGS to the gte list of
variables stored in a simulation.  These variables are used to
compile JIT input files.

refs #104
2015-08-05 14:15:39 -05:00
Alex Lin
e692b81fdb Setting initial sim time causes lockup
Found two issues.  First is that the next call times for
all of the jobs was not calculated correctly.  Second is
that the if the user wants to sync the sim to a real time
clock interval, the initial sync to the real time clock was pausing
the full starting sim time instead of syncing to the clock
interval.

refs #99
2015-08-04 16:36:19 -05:00
John M. Penn
5778add741 Ref #96 : Fix to many args warning. 2015-08-04 16:26:28 -05:00
John M. Penn
36cf0a72db Fixes #96 by adding space delimiters between values. 2015-08-04 15:51:47 -05:00
John M. Penn
c680c974f6 Refs #44 : Set precision to 15 for MonteVarFixed 2015-08-04 15:46:44 -05:00
John M. Penn
f2ca099baf Fixes #44: Changed the MonteRun values that are used and that are recorded to be the same precision. Also increased the precision from 10 to 15 significant digits. 2015-07-29 16:56:23 -05:00
Alex Lin
f4e0ce32b0 Can't compile ICG with --std=c++11
Removed the --std=c++11 flag.

refs #94
2015-07-29 09:50:53 -05:00
Alex Lin
a5929dbe6c Move search for library dependencies to make_makefile
Moved the search for all library dependencies into make_makefile.
Made a couple of minor clean up edits as well.

refs #92
2015-07-24 16:16:22 -05:00
Alex Lin
fc9c604056 Split CP up into components that can be called individually
Renamed some output file to make it more obvious what produced them.

refs #86
2015-07-23 10:30:55 -05:00
Alex Lin
a2bc82f1e9 MemoryManager unit test needs -lpthread on Ubuntu
Added -lpthread to link line just because.

refs #91
2015-07-22 18:05:34 -05:00
Alex Lin
b3d1a1d162 Trick should not modify TRICK_CFLAGS and TRICK_CXXFLAGS
Well sims compiled, but I forgot to test if Trick itself
would compile.  It didn't.  Added TRICK_SYSTEM_CFLAGS and
TRICK_SYSTEM_CXXFLAGS where needed.

refs #90
2015-07-22 15:34:54 -05:00
Alex Lin
90c85c73fc Trick should not modify TRICK_CFLAGS and TRICK_CXXFLAGS
Created TRICK_SYSTEM_CFLAGS, TRICK_SYSTEM_CXXFLAGS, and TRICK_SYSTEM_SFLAGS
that Trick uses to add the Trick system includes, defines and other
compilation flags.  TRICK_CFLAGS and TRICK_CXXFLAGS are now in
full control of the user.

refs #90
2015-07-22 14:20:36 -05:00
Alex Lin
d744eba557 Split CP up into components that can be called individually
Added a new TRICK_EXT_LIB_DIRS variable that allows users to
tell Trick about external libraries, rather than trying to
use TRICK_EXCLUDE. Added back getting multiple library dependency
sections from source files.

refs #86
2015-07-22 10:54:00 -05:00
Alex Lin
d72555f3cc Split CP up into components that can be called individually
After about 6 unsuccessful builds I decided to run the unit tests
before checking in these files.  I fixed the integrator unit
test that was failing from a previous issue along with problems
with the sims.

refs #86
2015-07-21 15:10:40 -05:00
Alex Lin
1bf08aeb55 Clock unit tests don't work on all platforms.
Clock unit tests don't work on virtual machine platforms.  I've
recommented them out until they can be reviewed.

refs #87
2015-07-21 14:45:19 -05:00
Alex Lin
63179b2fa3 Split CP up into components that can be called individually
Empty header files may need build directory created for lib_deps file.
Error message in make_makefile_src was not showing file name.

refs #86
2015-07-21 14:41:30 -05:00
Alex Lin
e438d83f2d Split CP up into components that can be called individually
Needed to add library dependencies from header files that don't have
classes/enums.  These files are the empty_io header files in ICG.

refs #86
2015-07-21 14:15:16 -05:00
Alex Lin
13268aae32 Merge branch 'makeMaster' that splits up CP into several executable
components.
2015-07-21 09:58:15 -05:00
Alex Lin
deac866379 Split CP up into components that can be called individually
Found some more dead code to delete.  Added a couple of progress
printouts.

refs #86
2015-07-21 09:55:53 -05:00
Alex Lin
d7b386227a Split CP up into components that can be called individually
Fixed some library dependency bugs.  JEOD test sims compile now.

refs #86
2015-07-21 08:52:00 -05:00
Alex Lin
dfa961808b Split CP up into components that can be called individually
First tests are working.  Changing a source file and header works
as before.  Adding library dependencies in either of these files
causes the makefile pieces to be redone.  Only tested in the ball
sim so far.

refs #86
2015-07-20 16:22:34 -05:00
Alex Lin
e1c1bbaccf Split CP up into components that can be called individually
Initial rough checkin that partially works for the ball sim.

refs #86
2015-07-16 15:36:36 -05:00
John M. Penn
a5e7699d40 Fixes #81: Updated other Makefiles to get tests to link 2015-07-16 15:02:33 -05:00
John M. Penn
3a70ffb156 List libraries more than once to satisfy gcc linker 2015-07-15 17:29:10 -05:00
John M. Penn
619d60fff7 Fixes #81: Memory Manager tests still require libtrick.a to be linked in. 2015-07-08 14:37:17 -05:00
Alex Lin
b660aa371e Create a separate directory for simulation compiliation.
Made adjustments to accomodate differences in arguments to perform
partial linking on the Mac.

refs #80
2015-07-08 11:25:59 -05:00
Alex Lin
5848d80bc4 Create a separate directory for simulation compiliation.
Made some adjustments for sims larger than the ball sim.
Make some changes to handle library packages such as JEOD.  Also
removed some dead code.
2015-07-08 10:33:56 -05:00
Alex Lin
5a77824638 Create a separate directory for simulation compilation.
Functioning build directory on Linux.  Everything is going into the build directory.
All files for all steps use the full path.  this change removes the need for us to
call depend_objs to fix makefile dependencies.  Changed the makefile rules to use
more pattern rules reducing the size of make_makefile.pm and the makefile too.
Changed the output of make to show short commands for each compile line.  Setting
the variable TRICK_VERBOSE_BUILD in the environement, command line, or in S_overrides.mk
will change the output to the full printout.

refs #80
2015-07-07 14:42:58 -05:00
Alex Lin
469be90e32 Create a separate direcotry for simulation compilation.
Moved most generated files into the build directory.  All object code,
io_src realated files, and swig related files are now in build.

Realized that ICG should be creating the makefile for the io_src
code.  ICG knows which files it created.

refs #80
2015-07-02 10:09:31 -05:00
John M. Penn
5fb037aa00 Fixes #79: Get the Clock tests working 2015-07-01 18:21:56 -05:00
John M. Penn
63975d9f89 Fixes #78: Changed message about configure option for TPRO CTE card. 2015-07-01 18:10:53 -05:00
John M. Penn
5ecc7b2af0 Remove RELEASE call when rt_nap is set 2015-07-01 18:03:58 -05:00
John M. Penn
5d219d5e2e Fixes #76: Fixed shadowed ii index. 2015-07-01 13:16:34 -05:00
John M. Penn
03284bf97d Break the Memory Manager out of libtrick.a into libtrick_mm.a. 2015-06-30 17:57:26 -05:00
Alex Lin
3c64d2cbe1 Remove duplicate stand-alone libraries
Removed additional stand alone rules in master makefile and the stand alone makefile in trick_utils.

refs #71
2015-06-25 14:40:18 -05:00
Alex Lin
cf3738d3fd Memory Manager tests trying to write io_src files in sim_services/include
Added 2 flags to trick-ICG. "-o" will specify an output directory.  Added this
option to the calls to trick-ICG for the Memory Manager tests.  Also added
a "-m" option to create the map files ICG creates for sims.  The memory manager
tests do not need these maps so we don't include the option.  Added the -m option
to the sim makefile and the master makefile so we do create the map when compile
Trick core and sims.

refs #72
2015-06-24 17:49:14 -05:00
Alex Lin
bfc197f81c Remove duplicate stand-alone libraries
defined CONFIG_MK in the trick_util makefiles to allow making those directories
without running configure first.  Removed link to hs_msg.h which no longer
exists.

refs #71
2015-06-24 17:18:06 -05:00
Alex Lin
44736be398 Remove dupilcate stand-alone libraries
The test programs now need more than just -ltrick.

refs #71
2015-06-24 16:54:15 -05:00
Alex Lin
03979a2079 Memory manager test programs need libtrick_units.a
Added libtrick_units.a to the linking of memory manager test programs.

refs #71
2015-06-24 16:26:11 -05:00
Alex Lin
941eb5c1cc Remove duplicate stand-alone libraries
I changed trick comm so that there is only one version built, not a slightly different version
if you are in or out of a sim.  While I was in the trick comm code, I removed all of the
unnecessary system header file inclusions out of tc.h.   I modified each of the source files
to include the system files it requires.  Some sim_services files were including tc.h and
also had to be edited to add headers.  I removed the stand-alone makefiles out of all
of the trick_utils directories.  Finally I modified the master makefile to exclude the
trick_util directories comm, math, and units from being archived into libtrick.a.  Each of
those directories will create their own library and will be included when linking a Trick sim.

refs #71
2015-06-24 15:58:17 -05:00