#ifndef __BOOST_PREPROCESSOR_THREAD_H #define __BOOST_PREPROCESSOR_THREAD_H #include "PreprocessorThread.h" namespace boost { class thread; } namespace GtpVisibilityPreprocessor { class Preprocessor; /** This class represents a preprocessor thread using boost. */ class BoostPreprocessorThread: public PreprocessorThread { public: BoostPreprocessorThread(Preprocessor *p); ~BoostPreprocessorThread(); virtual void InitThread(); virtual void RunThread(); void operator()(); int GetCurrentThreadId() const; protected: private: boost::thread *mThread; }; } #endif