aboutsummaryrefslogtreecommitdiff
path: root/interface.ccl
blob: 81c161ec9c70b5b6296fd091e35ad1c8ef43df59 (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


CCTK_INT FUNCTION \
  Hyperslab_Get (CCTK_POINTER_TO_CONST 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 IN hdata)

CCTK_INT FUNCTION \
  Hyperslab_GetList (CCTK_POINTER_TO_CONST 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_LocalMappingByIndex (CCTK_POINTER_TO_CONST 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 IN \
                                   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_TO_CONST IN from, \
                                                  CCTK_POINTER IN to), \
                                 CCTK_INT ARRAY OUT hsize_local, \
                                 CCTK_INT ARRAY OUT hsize_global, \
                                 CCTK_INT ARRAY OUT hoffset_global)

CCTK_INT FUNCTION \
  Hyperslab_GlobalMappingByIndex (CCTK_POINTER_TO_CONST 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 IN \
                                    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_TO_CONST IN from, \
                                                   CCTK_POINTER IN to), \
                                  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_GlobalMappingByIndex \
  WITH PUGHSlab_GlobalMappingByIndex LANGUAGE C
PROVIDES FUNCTION Hyperslab_LocalMappingByIndex \
  WITH PUGHSlab_LocalMappingByIndex LANGUAGE C
PROVIDES FUNCTION Hyperslab_FreeMapping \
  WITH PUGHSlab_FreeMapping LANGUAGE C

INCLUDES HEADER: PUGHSlab.h in Hyperslab.h