#ifndef THREAD_HPP #define THREAD_HPP #include class Thread { public: Thread(); virtual ~Thread(); void start(); void* join() const; virtual void stop(); void sendSignal( const int nSignal ) const; bool isRunning() const; private: virtual void* run() = 0; static void* threadStarter( void* pData ); protected: bool m_isRunning; private: pthread_t m_threadHandler; }; #endif // THREAD_HPP