-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathAlgorithm.hsc
More file actions
77 lines (74 loc) · 3.89 KB
/
Algorithm.hsc
File metadata and controls
77 lines (74 loc) · 3.89 KB
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
{-# LANGUAGE CPP #-}
module ArrayFire.Internal.Algorithm where
import ArrayFire.Internal.Defines
import Foreign.Ptr
import Foreign.C.Types
#include "af/algorithm.h"
foreign import ccall unsafe "af_sum"
af_sum :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_sum_nan"
af_sum_nan :: Ptr AFArray -> AFArray -> CInt -> Double -> IO AFErr
foreign import ccall unsafe "af_product"
af_product :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_product_nan"
af_product_nan :: Ptr AFArray -> AFArray -> CInt -> Double -> IO AFErr
foreign import ccall unsafe "af_min"
af_min :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_max"
af_max :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_all_true"
af_all_true :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_any_true"
af_any_true :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_count"
af_count :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_sum_all"
af_sum_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_sum_nan_all"
af_sum_nan_all :: Ptr Double -> Ptr Double -> AFArray -> Double -> IO AFErr
foreign import ccall unsafe "af_product_all"
af_product_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_product_nan_all"
af_product_nan_all :: Ptr Double -> Ptr Double -> AFArray -> Double -> IO AFErr
foreign import ccall unsafe "af_min_all"
af_min_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_max_all"
af_max_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_all_true_all"
af_all_true_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_any_true_all"
af_any_true_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_count_all"
af_count_all :: Ptr Double -> Ptr Double -> AFArray -> IO AFErr
foreign import ccall unsafe "af_imin"
af_imin :: Ptr AFArray -> Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_imax"
af_imax :: Ptr AFArray -> Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_imin_all"
af_imin_all :: Ptr Double -> Ptr Double -> Ptr CUInt -> AFArray -> IO AFErr
foreign import ccall unsafe "af_imax_all"
af_imax_all :: Ptr Double -> Ptr Double -> Ptr CUInt -> AFArray -> IO AFErr
foreign import ccall unsafe "af_accum"
af_accum :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_scan"
af_scan :: Ptr AFArray -> AFArray -> CInt -> AFBinaryOp -> CBool -> IO AFErr
foreign import ccall unsafe "af_scan_by_key"
af_scan_by_key :: Ptr AFArray -> AFArray -> AFArray -> CInt -> AFBinaryOp -> CBool -> IO AFErr
foreign import ccall unsafe "af_where"
af_where :: Ptr AFArray -> AFArray -> IO AFErr
foreign import ccall unsafe "af_diff1"
af_diff1 :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_diff2"
af_diff2 :: Ptr AFArray -> AFArray -> CInt -> IO AFErr
foreign import ccall unsafe "af_sort"
af_sort :: Ptr AFArray -> AFArray -> CUInt -> CBool -> IO AFErr
foreign import ccall unsafe "af_sort_index"
af_sort_index :: Ptr AFArray -> Ptr AFArray -> AFArray -> CUInt -> CBool -> IO AFErr
foreign import ccall unsafe "af_sort_by_key"
af_sort_by_key :: Ptr AFArray -> Ptr AFArray -> AFArray -> AFArray -> CUInt -> CBool -> IO AFErr
foreign import ccall unsafe "af_set_unique"
af_set_unique :: Ptr AFArray -> AFArray -> CBool -> IO AFErr
foreign import ccall unsafe "af_set_union"
af_set_union :: Ptr AFArray -> AFArray -> AFArray -> CBool -> IO AFErr
foreign import ccall unsafe "af_set_intersect"
af_set_intersect :: Ptr AFArray -> AFArray -> AFArray -> CBool -> IO AFErr