[ return ]

nsl_main.c



/****************************************************************/
/*                                                           	*/
/*                       nsl_main.c                          	*/
/*                                                            	*/
/* by Alfredo Weitzenfeld 					*/
/*                                                            	*/
/****************************************************************/
/*
 * [DEFINE DESCRIPTION = NSL top level]
 */


# include "nsl_include.h"

extern int dump_flag;
extern ofstream dump_file;
extern int track_flag;
extern ofstream track_file;

extern void user_clear();
extern void user_column();
extern void user_sensor();
extern void user_connector();
extern void user_file();
extern void user_load();
extern void user_track(int);
extern void user_closetrack();
extern void user_set_output();
extern void user_clear_46();
extern void user_devents();
extern void user_dpet();

//extern void user_reset_parms();

int nsl_user_command(istream& in_file)
{
  int status = 1;
  string str1;

// use 'nsl_get_str' repeatedly for sequence of strings
  if (nsl_get_str(in_file,str1) != 0) 
    {
      if (strcmp("clear",str1) == 0)
	{
	  user_clear();
	  return status;
	}
      if (strcmp("column",str1) == 0)
	{
	  user_column();
	  return status;
	}
      if (strcmp("sensor",str1) == 0)
	{
	  user_sensor();
	  return status;
	}
      if (strcmp("connector",str1) == 0)
	{
	  user_connector();
	  return status;
	}
      if (strcmp("file",str1) == 0)
	{
	  user_file();
	  return status;
	}
      if (strcmp("load",str1) == 0)
	{
	  user_load();
	  return status;
	}
      if (strcmp("track",str1) == 0)
	{
	  user_track(0);
	  return status;
	}
      if (strcmp("ptrack",str1) == 0)
	{
	  user_track(1);
	  return status;
	}
      if (strcmp("closetrack",str1) == 0)
	{
	  user_closetrack();
	  return status;
	}
      if (strcmp("setoutput",str1) == 0)
	{
	  user_set_output();
	  return status;
	}
      if (strcmp("clear46",str1) == 0)
	{
	  user_clear_46();
	  return status;
	}
      if (strcmp("devents",str1) == 0)
	{
	  user_devents();
	  return status;
	}
      if (strcmp("dpet",str1) == 0)
	{
	  user_dpet();
	  return status;
	}
      cout << "Unrecognized user command." << "\n";
      return status;
    }
  return status;
}


main(int argc, char **argv)
{
  NSL_USER_CMD = nsl_user_command;

				/* Default dump file name. */
/*
  sprintf(dump_file_name, "dump.dat");
*/
  NSLinit(argc,argv);

/* enter other code here */

  NSLmain(argc,argv);

  if(dump_flag)
    dump_file.close();
  if(track_flag)
    track_file.close();
  exit(0);
}


[ return ]