sttcl  v0.9c
STTCL C++ template state machine framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SttclBoostThread.h
Go to the documentation of this file.
1 
25 #ifndef STTCLBOOSTTHREAD_H_
26 #define STTCLBOOSTTHREAD_H_
27 
28 #if defined(STTCL_BOOST_THREADS) or defined(STTCL_BOOST_IMPL)
29 #include <boost/thread.hpp>
30 namespace sttcl
31 {
32 namespace internal
33 {
34 namespace boost_impl
35 {
39 class SttclBoostThread
40 {
41 public:
42  typedef boost::thread ThreadNativeType;
43 
44  typedef void* (*ThreadMethodPtr)(void*);
45 
46  SttclBoostThread(ThreadMethodPtr argThreadMethod);
47  virtual ~SttclBoostThread();
48 
49  bool run(void* args);
50  void join();
51  void detach();
52  static bool isSelf(const SttclBoostThread& otherThread);
53 
54 private:
55  ThreadMethodPtr threadMethod;
56  ThreadNativeType thread;
57 
58 };
59 }
60 }
61 }
62 
63 #endif
64 #endif /* STTCLBOOSTTHREAD_H_ */