/src/c-blosc2/plugins/codecs/zfp/src/template/decode3.c
Line | Count | Source |
1 | | /* private functions ------------------------------------------------------- */ |
2 | | |
3 | | /* scatter 4*4*4 block to strided array */ |
4 | | static void |
5 | | _t2(scatter, Scalar, 3)(const Scalar* q, Scalar* p, ptrdiff_t sx, ptrdiff_t sy, ptrdiff_t sz) |
6 | 0 | { |
7 | 0 | uint x, y, z; |
8 | 0 | for (z = 0; z < 4; z++, p += sz - 4 * sy) |
9 | 0 | for (y = 0; y < 4; y++, p += sy - 4 * sx) |
10 | 0 | for (x = 0; x < 4; x++, p += sx) |
11 | 0 | *p = *q++; |
12 | 0 | } Unexecuted instantiation: decode3d.c:scatter_double_3 Unexecuted instantiation: decode3f.c:scatter_float_3 Unexecuted instantiation: decode3i.c:scatter_int32_3 Unexecuted instantiation: decode3l.c:scatter_int64_3 |
13 | | |
14 | | /* scatter nx*ny*nz block to strided array */ |
15 | | static void |
16 | | _t2(scatter_partial, Scalar, 3)(const Scalar* q, Scalar* p, size_t nx, size_t ny, size_t nz, ptrdiff_t sx, ptrdiff_t sy, ptrdiff_t sz) |
17 | 0 | { |
18 | 0 | size_t x, y, z; |
19 | 0 | for (z = 0; z < nz; z++, p += sz - (ptrdiff_t)ny * sy, q += 4 * (4 - ny)) |
20 | 0 | for (y = 0; y < ny; y++, p += sy - (ptrdiff_t)nx * sx, q += 1 * (4 - nx)) |
21 | 0 | for (x = 0; x < nx; x++, p += sx, q++) |
22 | 0 | *p = *q; |
23 | 0 | } Unexecuted instantiation: decode3d.c:scatter_partial_double_3 Unexecuted instantiation: decode3f.c:scatter_partial_float_3 Unexecuted instantiation: decode3i.c:scatter_partial_int32_3 Unexecuted instantiation: decode3l.c:scatter_partial_int64_3 |
24 | | |
25 | | /* inverse decorrelating 3D transform */ |
26 | | static void |
27 | | _t2(inv_xform, Int, 3)(Int* p) |
28 | 0 | { |
29 | 0 | uint x, y, z; |
30 | | /* transform along z */ |
31 | 0 | for (y = 0; y < 4; y++) |
32 | 0 | for (x = 0; x < 4; x++) |
33 | 0 | _t1(inv_lift, Int)(p + 1 * x + 4 * y, 16); |
34 | | /* transform along y */ |
35 | 0 | for (x = 0; x < 4; x++) |
36 | 0 | for (z = 0; z < 4; z++) |
37 | 0 | _t1(inv_lift, Int)(p + 16 * z + 1 * x, 4); |
38 | | /* transform along x */ |
39 | 0 | for (z = 0; z < 4; z++) |
40 | 0 | for (y = 0; y < 4; y++) |
41 | 0 | _t1(inv_lift, Int)(p + 4 * y + 16 * z, 1); |
42 | 0 | } Unexecuted instantiation: decode3d.c:inv_xform_int64_3 Unexecuted instantiation: decode3f.c:inv_xform_int32_3 Unexecuted instantiation: decode3i.c:inv_xform_int32_3 Unexecuted instantiation: decode3l.c:inv_xform_int64_3 |
43 | | |
44 | | /* public functions -------------------------------------------------------- */ |
45 | | |
46 | | /* decode 4*4*4 block and store at p using strides (sx, sy, sz) */ |
47 | | size_t |
48 | | _t2(zfp_decode_block_strided, Scalar, 3)(zfp_stream* stream, Scalar* p, ptrdiff_t sx, ptrdiff_t sy, ptrdiff_t sz) |
49 | 0 | { |
50 | | /* decode contiguous block */ |
51 | 0 | cache_align_(Scalar block[64]); |
52 | 0 | size_t bits = _t2(zfp_decode_block, Scalar, 3)(stream, block); |
53 | | /* scatter block to strided array */ |
54 | 0 | _t2(scatter, Scalar, 3)(block, p, sx, sy, sz); |
55 | 0 | return bits; |
56 | 0 | } Unexecuted instantiation: zfp_decode_block_strided_double_3 Unexecuted instantiation: zfp_decode_block_strided_float_3 Unexecuted instantiation: zfp_decode_block_strided_int32_3 Unexecuted instantiation: zfp_decode_block_strided_int64_3 |
57 | | |
58 | | /* decode nx*ny*nz block and store at p using strides (sx, sy, sz) */ |
59 | | size_t |
60 | | _t2(zfp_decode_partial_block_strided, Scalar, 3)(zfp_stream* stream, Scalar* p, size_t nx, size_t ny, size_t nz, ptrdiff_t sx, ptrdiff_t sy, ptrdiff_t sz) |
61 | 0 | { |
62 | | /* decode contiguous block */ |
63 | 0 | cache_align_(Scalar block[64]); |
64 | 0 | size_t bits = _t2(zfp_decode_block, Scalar, 3)(stream, block); |
65 | | /* scatter block to strided array */ |
66 | 0 | _t2(scatter_partial, Scalar, 3)(block, p, nx, ny, nz, sx, sy, sz); |
67 | 0 | return bits; |
68 | 0 | } Unexecuted instantiation: zfp_decode_partial_block_strided_double_3 Unexecuted instantiation: zfp_decode_partial_block_strided_float_3 Unexecuted instantiation: zfp_decode_partial_block_strided_int32_3 Unexecuted instantiation: zfp_decode_partial_block_strided_int64_3 |