1 #ifndef _OMP_UTILS_H_
2 #define _OMP_UTILS_H_
3 
4 namespace omp_par {
5 
6   template <class T,class StrictWeakOrdering>
7     void merge(T A_,T A_last,T B_,T B_last,T C_,int p,StrictWeakOrdering comp);
8 
9   template <class T,class StrictWeakOrdering>
10     void merge_sort(T A,T A_last,StrictWeakOrdering comp);
11 
12   template <class T>
13     void merge_sort(T A,T A_last);
14 
15   template <class T>
16     void merge_sort_ptrs(T A,T A_last);
17 
18   template <class T, class I>
19     T reduce(T* A, I cnt);
20 
21   template <class T, class I>
22     void scan(T* A, T* B,I cnt);
23 
24 }
25 
26 #include "ompUtils.tcc"
27 
28 #endif
29 
30