aboutsummaryrefslogtreecommitdiff
path: root/interface.ccl
blob: f13ff24d1435ef0ea1ee4133fcc5b8bf56a28275 (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
# Interface definition for thorn PUGHSlab
# $Header$

implements: Hyperslab
inherits:   Driver

CCTK_INT FUNCTION \
  Hyperslab_Get (CCTK_POINTER IN cctkGH, \
                 CCTK_INT IN mapping_handle, \
                 CCTK_INT IN proc, \
                 CCTK_INT IN vindex, \
                 CCTK_INT IN timelevel, \
                 CCTK_INT IN hdatatype, \
                 CCTK_POINTER OUT hdata)

CCTK_INT FUNCTION \
  Hyperslab_GetList (CCTK_POINTER IN cctkGH, \
                     CCTK_INT IN mapping_handle, \
                     CCTK_INT IN num_arrays, \
                     CCTK_INT ARRAY IN procs, \
                     CCTK_INT ARRAY IN vindices, \
                     CCTK_INT ARRAY IN timelevels, \
                     CCTK_INT ARRAY IN hdatatypes, \
                     CCTK_POINTER ARRAY IN hdata, \
                     CCTK_INT ARRAY OUT retvals)

CCTK_INT FUNCTION \
  Hyperslab_DefineLocalMappingByIndex (CCTK_POINTER IN cctkGH, \
                                       CCTK_INT IN vindex, \
                                       CCTK_INT IN hdim, \
                                       CCTK_INT ARRAY IN direction, \
                                       CCTK_INT ARRAY IN origin, \
                                       CCTK_INT ARRAY IN extent, \
                                       CCTK_INT ARRAY IN downsample, \
                                       CCTK_INT IN table_handle, \
                                       CCTK_INT CCTK_FPOINTER \
                                         conversion_fn (CCTK_INT IN nelems, \
                                                        CCTK_INT IN src_stride,\
                                                        CCTK_INT IN dst_stride,\
                                                        CCTK_INT IN src_type, \
                                                        CCTK_INT IN dst_type, \
                                                        CCTK_POINTER IN src, \
                                                        CCTK_POINTER OUT dst), \
                                       CCTK_INT ARRAY OUT hsize_local, \
                                       CCTK_INT ARRAY OUT hsize_global, \
                                       CCTK_INT ARRAY OUT hoffset_global)

CCTK_INT FUNCTION \
  Hyperslab_DefineGlobalMappingByIndex (CCTK_POINTER IN cctkGH, \
                                        CCTK_INT IN vindex, \
                                        CCTK_INT IN hdim, \
                                        CCTK_INT ARRAY IN direction, \
                                        CCTK_INT ARRAY IN origin, \
                                        CCTK_INT ARRAY IN extent, \
                                        CCTK_INT ARRAY IN downsample, \
                                        CCTK_INT IN table_handle, \
                                        CCTK_INT CCTK_FPOINTER \
                                         conversion_fn (CCTK_INT IN nelems, \
                                                        CCTK_INT IN src_stride,\
                                                        CCTK_INT IN dst_stride,\
                                                        CCTK_INT IN src_type, \
                                                        CCTK_INT IN dst_type, \
                                                        CCTK_POINTER IN src, \
                                                        CCTK_POINTER OUT dst), \
                                        CCTK_INT ARRAY OUT hsize)

CCTK_INT FUNCTION Hyperslab_FreeMapping (CCTK_INT IN mapping_handle)


PROVIDES FUNCTION Hyperslab_Get \
  WITH PUGHSlab_Get LANGUAGE C
PROVIDES FUNCTION Hyperslab_GetList \
  WITH PUGHSlab_GetList LANGUAGE C
PROVIDES FUNCTION Hyperslab_DefineGlobalMappingByIndex \
  WITH PUGHSlab_DefineGlobalMappingByIndex LANGUAGE C
PROVIDES FUNCTION Hyperslab_DefineLocalMappingByIndex \
  WITH PUGHSlab_DefineLocalMappingByIndex LANGUAGE C
PROVIDES FUNCTION Hyperslab_FreeMapping \
  WITH PUGHSlab_FreeMapping LANGUAGE C

INCLUDES HEADER: PUGHSlab.h in Hyperslab.h