summaryrefslogtreecommitdiff
path: root/ace/Timer_Hash.cpp
blob: cfd39ae18e71a670591c2a3f18563f1e6ff28ab0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
// $Id$

// Timer_Hash.cpp

#if !defined (ACE_TIMER_HASH_C)
#define ACE_TIMER_HASH_C

#include "ace/Timer_Hash.h"
#include "ace/Synch_Traits.h"
#include "ace/Recursive_Thread_Mutex.h"

#if defined (ACE_HAS_BROKEN_HPUX_TEMPLATES)
#include "ace/Timer_Hash_T.cpp"
#endif /* ACE_HAS_BROKEN_HPUX_TEMPLATES */

ACE_RCSID(ace, Timer_Hash, "$Id$")

#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION)
template class ACE_Free_List<ACE_Timer_Node_T<ACE_Event_Handler *> >;
template class ACE_Locked_Free_List<ACE_Timer_Node_T<ACE_Event_Handler *>,
                                    ACE_Null_Mutex>;
template class ACE_Timer_Hash_Upcall <ACE_Event_Handler *,
                                      ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
                                      ACE_SYNCH_RECURSIVE_MUTEX>;

template class ACE_Timer_Queue_T <ACE_Event_Handler *,
                                  ACE_Hash_Upcall,
                                  ACE_Null_Mutex>;

template class ACE_Timer_Queue_Iterator_T <ACE_Event_Handler *,
                                           ACE_Hash_Upcall,
                                           ACE_Null_Mutex>;

template class ACE_Timer_List_T <ACE_Event_Handler *,
                                 ACE_Hash_Upcall,
                                 ACE_Null_Mutex>;

template class ACE_Timer_List_Iterator_T <ACE_Event_Handler *,
                                          ACE_Hash_Upcall,
                                          ACE_Null_Mutex>;

template class ACE_Timer_Heap_T <ACE_Event_Handler *,
                                 ACE_Hash_Upcall,
                                 ACE_Null_Mutex>;

template class ACE_Timer_Heap_Iterator_T <ACE_Event_Handler *,
                                          ACE_Hash_Upcall,
                                          ACE_Null_Mutex>;

template class ACE_Timer_Hash_T<ACE_Event_Handler *,
                        ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
                        ACE_SYNCH_RECURSIVE_MUTEX,
                        ACE_Hash_Timer_List>;

template class ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *,
                                  ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
                                  ACE_SYNCH_RECURSIVE_MUTEX,
                                  ACE_Hash_Timer_List>;

template class ACE_Timer_Hash_T<ACE_Event_Handler *,
                        ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
                        ACE_SYNCH_RECURSIVE_MUTEX,
                        ACE_Hash_Timer_Heap>;

template class ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *,
                                  ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>,
                                  ACE_SYNCH_RECURSIVE_MUTEX,
                                  ACE_Hash_Timer_Heap>;

#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA)
#pragma instantiate ACE_Free_List<ACE_Timer_Node_T<ACE_Event_Handler *> >
#pragma instantiate ACE_Locked_Free_List<ACE_Timer_Node_T<ACE_Event_Handler *>, \
                                    ACE_Null_Mutex>
#pragma instantiate ACE_Timer_Hash_Upcall <ACE_Event_Handler *, \
                                      ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>, \
                                      ACE_SYNCH_RECURSIVE_MUTEX>

#pragma instantiate ACE_Timer_Queue_T <ACE_Event_Handler *, \
                                  ACE_Hash_Upcall, \
                                  ACE_Null_Mutex>

#pragma instantiate ACE_Timer_Queue_Iterator_T <ACE_Event_Handler *, \
                                           ACE_Hash_Upcall, \
                                           ACE_Null_Mutex>

#pragma instantiate ACE_Timer_List_T <ACE_Event_Handler *, \
                                 ACE_Hash_Upcall, \
                                 ACE_Null_Mutex>

#pragma instantiate ACE_Timer_List_Iterator_T <ACE_Event_Handler *, \
                                          ACE_Hash_Upcall, \
                                          ACE_Null_Mutex>

#pragma instantiate ACE_Timer_Heap_T <ACE_Event_Handler *, \
                                 ACE_Hash_Upcall, \
                                 ACE_Null_Mutex>

#pragma instantiate ACE_Timer_Heap_Iterator_T <ACE_Event_Handler *, \
                                          ACE_Hash_Upcall, \
                                          ACE_Null_Mutex>

#pragma instantiate ACE_Timer_Hash_T<ACE_Event_Handler *, \
                        ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>, \
                        ACE_SYNCH_RECURSIVE_MUTEX, \
                        ACE_Hash_Timer_List>

#pragma instantiate ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *, \
                                  ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>, \
                                  ACE_SYNCH_RECURSIVE_MUTEX, \
                                  ACE_Hash_Timer_List>

#pragma instantiate ACE_Timer_Hash_T<ACE_Event_Handler *, \
                        ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>, \
                        ACE_SYNCH_RECURSIVE_MUTEX, \
                        ACE_Hash_Timer_Heap>

#pragma instantiate ACE_Timer_Hash_Iterator_T<ACE_Event_Handler *, \
                                  ACE_Event_Handler_Handle_Timeout_Upcall<ACE_SYNCH_RECURSIVE_MUTEX>, \
                                  ACE_SYNCH_RECURSIVE_MUTEX, \
                                  ACE_Hash_Timer_Heap>

#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */


#endif /* ACE_TIMER_HASH_C */