aboutsummaryrefslogtreecommitdiff
path: root/interface.ccl
blob: a485e9a1b395e236862621394c0411476e8067d3 (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
# 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 OUT 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 stride, \
                                                        CCTK_INT IN from_type, \
                                                        CCTK_INT IN to_type, \
                                                        CCTK_POINTER IN from, \
                                                        CCTK_POINTER OUT to), \
                                       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 stride, \
                                                         CCTK_INT IN from_type, \
                                                         CCTK_INT IN to_type, \
                                                         CCTK_POINTER IN from, \
                                                         CCTK_POINTER OUT 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_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