acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
common.h
1#pragma once
2
3
4
5class single_lock;
6
7
8
9
10
11
12
13#ifdef __APPLE__
14#include <semaphore.h>
15#endif
16
17
18
19
20//class sync_object;
21class semaphore;
22class mutex;
23class happening;
26class single_lock;
27class multiple_lock;
28
29
30
31
32
33
34
35//class predicate_holder_base :
36// virtual public matter
37//{
38//public:
39//
40// predicate_holder_base(::particle * pparticle) :
41// ::matter(pparticle),
42// m_pholdref(pholdref)
43// {
44//
45// }
46//
47// virtual void run() {}
48//
49//};
50
51//template < typename PRED >
52//class predicate_holder :
53// virtual public predicate_holder_base
54//{
55//public:
56//
57// PRED m_predicate;
58//
59// predicate_holder(::particle * pparticle, PRED pred) :
60// ::matter(pparticle),
61// predicate_holder_base(pparticle),
62// m_predicate(pred)
63// {
64//
65// }
66//
67// virtual void run() { m_predicate(); }
68//
69//};
70
71//class user_interaction_ptr_array;
72
73class thread_startup;
74
75namespace prototype
76{
77
78 class command;
79
80} // namespace prototype
81
82
83//namespace exception
84//{
85//
86//
87// class exception;
88// class base;
89//
90//
91//} // namespace exception
92
93
94
95//CLASS_DECL_ACME thread* __begin_thread(::particle * pparticle, __THREADPROC pfnThreadProc, LPVOID pParam, ::i32 epriority = ::e_priority_normal, ::u32 nStackSize = 0, ::u32 dwCreateFlags = 0, LPSECURITY_ATTRIBUTES lpSecurityAttrs = nullptr, itask * puiId = nullptr, error * perror = nullptr);
Definition critical_section.h:9
Definition happening.h:37
Definition aaa_manual_reset_event.h:26
Definition multiple_lock.h:9
Definition mutex.h:6
Definition semaphore.h:10
Definition single_lock.h:5