Example #1
0
int main(int argc, char** argv)
{
#ifdef _DEBUG
	cout << "***DEBUG BUILD***" << endl;
#endif
	ncc::whoami();

	InitRun(argc,argv);
	InitGlut(argc,argv);
	InitHUD();
	InitDevIL();
	InitPhysX();
	InitCUDA();
	InitExperiment();
	glutMainLoop(); // enter event processing

	return 0; // never actually reached.
}
Example #2
0
int ProcessMessage ( char *buf , int nread )
{
    char command[50] , data[200] ;
    buf[nread] = '\0' ;

    sscanf ( buf , "%s %s" , command , data ) ;

    if ( ! strcmp ( command , "path" ) )
    {
        char *str , *token ;
        int j ;

        str = data ;
        token = strtok ( str , "," ) ;
        if ( token == NULL )
        {
            return - 1 ;
        }
        sscanf ( token , "%lf" , &T_p_planning ) ;
        str = NULL ;

        token = strtok ( str , "," ) ;
        if ( token == NULL )
        {
            return - 1 ;
        }
        sscanf ( token , "%lf" , &K_planning ) ;
        str = NULL ;

        token = strtok ( str , "," ) ;
        if ( token == NULL )
        {
            return - 1 ;
        }
        sscanf ( token , "%s" , save_file ) ;
        str = NULL ;

        for ( j = 0 ; ; j ++ )
        {
            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                break ;
            }
            sscanf ( token , "%lf" , &X_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &Y_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &Z_planning[j] ) ;
            str = NULL ;
        }

        planning_points = j ;

        smooth_flag = 0 ;

        if ( GenerateTrackCubic ( ) < 0 )
        {
            return - 1 ;
        }

        if ( finished )
        {
            send_message_safe ( "path begin" ) ;
            InitExperiment ( ) ;
        }
        else
        {
            send_message_safe ( "path in_curse" ) ;
        }

        return 0 ;

    }
    if ( ! strcmp ( command , "points" ) )
    {
        char *str , *token ;
        int j ;

        str = data ;
        token = strtok ( str , "," ) ;
        if ( token == NULL )
        {
            return - 1 ;
        }
        sscanf ( token , "%s" , save_file ) ;
        str = NULL ;

        for ( j = 0 ; ; j ++ )
        {
            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                break ;
            }
            sscanf ( token , "%lf" , &X_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &Y_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &T_planning[j] ) ;
            str = NULL ;
        }

        planning_points = j ;

        smooth_flag = 0 ;

        if ( GenerateTrack ( ) < 0 )
        {
            return - 1 ;
        }

        if ( finished )
        {
            send_message_safe ( "points begin" ) ;
            InitExperiment ( ) ;
        }
        else
        {
            send_message_safe ( "points in_curse" ) ;
        }

        return 0 ;
    }
    if ( ! strcmp ( command , "reference" ) )
    {
        char *str , *token ;
        int j ;

        str = data ;
        token = strtok ( str , "," ) ;
        if ( token == NULL )
        {
            return - 1 ;
        }
        sscanf ( token , "%s" , save_file ) ;
        str = NULL ;

        for ( j = 0 ; ; j ++ )
        {
            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                break ;
            }
            sscanf ( token , "%lf" , &X_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &Y_planning[j] ) ;
            str = NULL ;

            token = strtok ( str , "," ) ;
            if ( token == NULL )
            {
                return - 1 ;
            }
            sscanf ( token , "%lf" , &T_planning[j] ) ;
            str = NULL ;
        }

        planning_points = j ;

        smooth_flag = 1 ;

        if ( GenerateTrack ( ) < 0 )
        {
            return - 1 ;
        }

        if ( finished )
        {
            send_message_safe ( "reference begin" ) ;
            InitExperiment ( ) ;
        }
        else
        {
            send_message_safe ( "reference in_curse" ) ;
        }

        return 0 ;
    }

    return - 1 ;
}