il codice é lungo... non penso abbiate voglia di leggerlo.. =) (e parte non l'ho ancora scritto, quindi sarebbe difficile postarlo.. =) ). In ogni caso se serve lo posto tutto.
Questo é l'header di robosim:
Quello che succederá_(non ho ancora scritto quel pezzo) é che surface (la superfice dove renderizzano le OpenGL) verrá attaccata a una WidgetGTK, e poi con la funzione start_pause() si gestisce la simulazione.codice:class RoboSim { public: RoboSim(char* filename); SDL_Surface* getSurface(); int setRobotPosition(int, int, int); int start_pause(); bool isRunning(); private: bool first_start; bool running; SDL_Thread *GuiThread; SDL_Thread *WorldThread; SDL_Thread *RoboThread; SDL_Surface* surface; robot_hw_t *robot_hw; space_t *space; robot_t *robot; world_t *world; gui_t *gui; }