STE-Industries: utilities testing
Thread.h
Go to the documentation of this file.
1 
13 # if !defined THREAD_H
14 
15 # define THREAD_H
16 
17 # include <pthread.h>
18 
19 namespace GraphicSpace
20 {
21 
27 
28 class Thread
29  {
30  private:
31 
34  static constexpr unsigned int ATTRIBUTE_INIT_OK = 0;
35 
40  static constexpr unsigned int ATTRIBUTE_SET_OK = 0;
41 
44  static constexpr unsigned int PARAMETER_GET_OK = 0;
45 
48  static constexpr unsigned int THREAD_CREATE_OK = 0;
49 
52  static constexpr unsigned int THREAD_JOIN_OK = 0;
53 
56  pthread_t ThreadId;
57 
60  static pthread_attr_t ThreadAttribute;
61 
64  static pthread_t MainThreadId;
65 
66  public:
67 
70  typedef void *(*ThreadFunctionType)(void* Argument);
71 
72  Thread(void) noexcept;
73 
74  Thread(const Thread& thisThread) =
75  delete;
76 
77  Thread(Thread&& thisThread) = delete;
78 
79  ~Thread(void) noexcept;
80 
81  Thread& operator = (const Thread& thisThread) =
82  delete;
83 
84  Thread& operator = (Thread&& thisThread) =
85  delete;
86 
88  ThreadFunction,
89  void* Argument) noexcept(false);
90 
91  void Kill(void) noexcept(false);
92 
93  void Join(void) noexcept(false);
94 
95  static void Initialize(void) noexcept(false);
96 
97  static void Finalize(void) noexcept;
98 
99  };
100 
101 }
102 
103 # endif
GraphicSpace::Thread::ATTRIBUTE_SET_OK
static constexpr unsigned int ATTRIBUTE_SET_OK
Definition: Thread.h:40
GraphicSpace::Thread::Thread
Thread(void) noexcept
Definition: Thread.cpp:37
GraphicSpace::Thread::MainThreadId
static pthread_t MainThreadId
Definition: Thread.h:64
GraphicSpace::Thread::Start
void Start(ThreadFunctionType ThreadFunction, void *Argument) noexcept(false)
Definition: Thread.cpp:148
GraphicSpace::Thread::~Thread
~Thread(void) noexcept
Definition: Thread.cpp:54
GraphicSpace::Thread::ThreadFunctionType
void *(* ThreadFunctionType)(void *Argument)
Definition: Thread.h:70
GraphicSpace::Thread::ThreadAttribute
static pthread_attr_t ThreadAttribute
Definition: Thread.h:60
GraphicSpace::Thread::THREAD_CREATE_OK
static constexpr unsigned int THREAD_CREATE_OK
Definition: Thread.h:48
GraphicSpace::Thread::operator=
Thread & operator=(const Thread &thisThread)=delete
GraphicSpace::Thread::ThreadId
pthread_t ThreadId
Definition: Thread.h:56
GraphicSpace::Thread::PARAMETER_GET_OK
static constexpr unsigned int PARAMETER_GET_OK
Definition: Thread.h:44
GraphicSpace::Thread::Initialize
static void Initialize(void) noexcept(false)
Definition: Thread.cpp:79
GraphicSpace::Thread::Join
void Join(void) noexcept(false)
Definition: Thread.cpp:197
GraphicSpace::Thread
Definition: Thread.h:28
GraphicSpace::Thread::Finalize
static void Finalize(void) noexcept
Definition: Thread.cpp:115
GraphicSpace
Definition: Bitmap.cpp:29
GraphicSpace::Thread::Kill
void Kill(void) noexcept(false)
Definition: Thread.cpp:174
GraphicSpace::Thread::ATTRIBUTE_INIT_OK
static constexpr unsigned int ATTRIBUTE_INIT_OK
Definition: Thread.h:34
GraphicSpace::Thread::THREAD_JOIN_OK
static constexpr unsigned int THREAD_JOIN_OK
Definition: Thread.h:52