#ifndef THREAD_H #define THREAD_H #include #include #include class Thread { public: Thread(); virtual ~Thread();// Arrête automatiquement le thread meme s'il est en cours. bool start();// Démarre la fonction run() dans un thread. void stop();// Arrête le thread. void join();// Rattache le thread au processus principal qui est bloqué et attend que le run() se termine. void setAutoDelete(bool autoDelete);// Permet de declarer dynamiquement une classe qui hérite de Thread sans garder le pointeur, il sera delete automatiquement à la fin du thread si l'argument est true. bool threadRunning(); bool lockMutex(std::string name); bool unlockMutex(std::string name); virtual void run() = 0;// Tout devra se passer ici protected: bool createLockMutex(std::string name); private: static int ThreadInit(void* param); bool m_isstop; SDL_Thread *m_t; bool m_autoDelete; std::map m_mutexs; }; #endif // THREAD_H