mirror of
https://github.com/nasa/trick.git
synced 2024-12-24 07:16:41 +00:00
54 lines
1.4 KiB
C++
54 lines
1.4 KiB
C++
/*
|
|
PURPOSE: (The Trick simulation executive MAIN program.)
|
|
REFERENCE: ((Bailey, R.W, and Paddock, E.J.)
|
|
(Trick Simulation Environment)
|
|
(JSC / Automation and Robotics Division)
|
|
(June 1994))
|
|
ASSUMPTIONS AND LIMITATIONS: (It all starts here)
|
|
PROGRAMMERS: ( (Robert W. Bailey) (LinCom) (April 1992) )
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include <locale.h>
|
|
|
|
#include "trick/Executive.hh"
|
|
#include "trick/command_line_protos.h"
|
|
#include "trick/exec_proto.hh"
|
|
|
|
//TODO move to proto
|
|
void memory_init(void);
|
|
|
|
int master( int nargs, char **args) {
|
|
|
|
int ret ;
|
|
|
|
/* Set the locale */
|
|
if (setlocale(LC_CTYPE, "") == NULL) {
|
|
fprintf(stderr, "Unable to set the locale.\n");
|
|
fprintf(stderr, "Please check LANG, LC_CTYPE and LC_ALL.\n");
|
|
return 1;
|
|
}
|
|
|
|
/* adds sim objects including the executive defined at CP time */
|
|
memory_init() ;
|
|
|
|
/* process generic command line arguments */
|
|
//Trick::CommandLineArguments * cmd_args = exec_get_cmd_args() ;
|
|
command_line_args_process_sim_args(nargs, args) ;
|
|
|
|
/* get the exec pointer */
|
|
Trick::Executive * exec = exec_get_exec_cpp() ;
|
|
|
|
ret = exec->init() ;
|
|
|
|
if ( ret == 0 ) {
|
|
exec->loop() ;
|
|
}
|
|
ret = exec->shutdown() ;
|
|
|
|
//TODO: add call to free all memory from memory manager
|
|
|
|
return ret ;
|
|
}
|
|
|