mirror of
https://github.com/nasa/trick.git
synced 2025-06-23 01:08:52 +00:00
Standardize directory names
Reorganized. Created a new top level include directory that will hold all of Trick's header files. Moved all of the Trick headers to this directory. Created a libexec directory that holds all of the executables that users don't need to execute directly. Changed all of the executables remaining in bin to start with "trick-". In the sim_services directories changed all source files to find the Trick headers in their new location. Since all of the include files are gone in sim_services, removed the src directories as well, moving all of the source files up a level. Moved the makefiles, docs, man, and other architecture independent files into a top level share directory. Renamed lib_${TRICK_HOST_CPU} to lib64 or lib depending on the platform we're currently on. refs #63
This commit is contained in:
@ -0,0 +1,41 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "trick/VariableServerThread.hh"
|
||||
|
||||
void Trick::VariableServerThread::preload_checkpoint() {
|
||||
// Let the thread complete any data copying it has to do
|
||||
// and then suspend data copying until the checkpoint is reloaded.
|
||||
pthread_mutex_lock(©_mutex);
|
||||
|
||||
// Save the pause state of this thread.
|
||||
saved_pause_cmd = pause_cmd;
|
||||
|
||||
// Disallow data writing.
|
||||
pause_cmd = true ;
|
||||
|
||||
// Temporarily "disconnect" the variable references from Trick Managed Memory
|
||||
// by tagging each as a "bad reference".
|
||||
std::vector <VariableReference *>::iterator it ;
|
||||
for (it = vars.begin(); it != vars.end() ; it++) {
|
||||
(*it)->ref->address = (char*)&bad_ref_int;
|
||||
(*it)->ref->attr = new ATTRIBUTES() ;
|
||||
(*it)->ref->attr->type = TRICK_NUMBER_OF_TYPES ;
|
||||
(*it)->ref->attr->units = (char *)"--" ;
|
||||
(*it)->ref->attr->size = sizeof(int) ;
|
||||
}
|
||||
}
|
||||
|
||||
void Trick::VariableServerThread::restart() {
|
||||
// Set the pause state of this thread back to its "pre-checkpoint reload" state.
|
||||
pause_cmd = saved_pause_cmd ;
|
||||
|
||||
// Set retry_bad_ref so that variables in this varible server thread will
|
||||
// be re-resolved to the newly re-created memory objects.
|
||||
var_retry_bad_ref();
|
||||
|
||||
// Allow data copying to continue.
|
||||
pthread_mutex_unlock(©_mutex);
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user