void UserPostOoaInitializationCalloutf( int argc, char ** argv ) { /* Insert implementation specific code here. */ SYS_USER_CO_PRINTF( "UserPostOoaInitializationCallout\n" ) c_t acc_file[ESCHER_SYS_MAX_STRING_LEN]; c_t gps_file[ESCHER_SYS_MAX_STRING_LEN]; c_t lidar_file[ESCHER_SYS_MAX_STRING_LEN]; memset( acc_file, 0, ESCHER_SYS_MAX_STRING_LEN ); memset( gps_file, 0, ESCHER_SYS_MAX_STRING_LEN ); memset( lidar_file, 0, ESCHER_SYS_MAX_STRING_LEN ); { int c; opterr = 0; while ( ( c = getopt ( argc, argv, "a::g::l::t" ) ) != -1 ) { switch ( c ) { case 'a': if ( optarg ) strcpy( acc_file, optarg ); break; case 'g': if ( optarg ) strcpy( gps_file, optarg ); break; case 'l': if ( optarg ) strcpy( lidar_file, optarg ); break; case 't': DATA_enable_turbulence(); break; case '?': fprintf( stderr, "Unknown option character '%c'.\n", optopt ); break; default: exit(1); } } } testbench_start( acc_file, gps_file, lidar_file ); }
SYS_USER_CO_PRINTF( "UserPreOoaInitializationCallout\n" ) } /* * UserPostOoaInitializationCallout * * This function is invoked immediately after executing any xtUML * initialization functions. * When this callout function returns, the system dispatcher will allow the * xtUML application analysis state models to start consuming events. */ void UserPostOoaInitializationCalloutf( void ) { /* Insert implementation specific code here. */ SYS_USER_CO_PRINTF( "UserPostOoaInitializationCallout\n" ) } /* * UserBackgroundProcessingCallout * * This function is invoked once during each loop execution of the system * dispather. * It is invoked at the 'top' of the system dispatcher loop, immediately * prior to dispatching any xtUML application analysis events. */ void UserBackgroundProcessingCalloutf( void ) { /* Activate this invocation to periodically tick the example simple TIM. */ #if ESCHER_SYS_MAX_XTUML_TIMERS > 0