1 | /** |
---|
2 | * @file sz_double.h |
---|
3 | * @author Sheng Di |
---|
4 | * @date July, 2017 |
---|
5 | * @brief Header file for the sz_double.c. |
---|
6 | * (C) 2016 by Mathematics and Computer Science (MCS), Argonne National Laboratory. |
---|
7 | * See COPYRIGHT in top-level directory. |
---|
8 | */ |
---|
9 | |
---|
10 | #ifndef _SZ_Double_PWR_H |
---|
11 | #define _SZ_Double_PWR_H |
---|
12 | |
---|
13 | #ifdef __cplusplus |
---|
14 | extern "C" { |
---|
15 | #endif |
---|
16 | |
---|
17 | #include <stdio.h> |
---|
18 | |
---|
19 | void compute_segment_precisions_double_1D(double *oriData, size_t dataLength, double* pwrErrBound, unsigned char* pwrErrBoundBytes, double globalPrecision); |
---|
20 | unsigned int optimize_intervals_double_1D_pwr(double *oriData, size_t dataLength, double* pwrErrBound); |
---|
21 | void compute_segment_precisions_double_2D(double *oriData, double* pwrErrBound, |
---|
22 | size_t r1, size_t r2, size_t R2, size_t edgeSize, unsigned char* pwrErrBoundBytes, double Min, double Max, double globalPrecision); |
---|
23 | unsigned int optimize_intervals_double_2D_pwr(double *oriData, size_t r1, size_t r2, size_t R2, size_t edgeSize, double* pwrErrBound); |
---|
24 | void compute_segment_precisions_double_3D(double *oriData, double* pwrErrBound, |
---|
25 | size_t r1, size_t r2, size_t r3, size_t R2, size_t R3, size_t edgeSize, unsigned char* pwrErrBoundBytes, double Min, double Max, double globalPrecision); |
---|
26 | unsigned int optimize_intervals_double_3D_pwr(double *oriData, size_t r1, size_t r2, size_t r3, size_t R2, size_t R3, size_t edgeSize, double* pwrErrBound); |
---|
27 | void SZ_compress_args_double_NoCkRngeNoGzip_1D_pwr(unsigned char** newByteData, double *oriData, double globalPrecision, size_t dataLength, size_t *outSize, double min, double max); |
---|
28 | void SZ_compress_args_double_NoCkRngeNoGzip_2D_pwr(unsigned char** newByteData, double *oriData, double globalPrecision, size_t r1, size_t r2, |
---|
29 | size_t *outSize, double min, double max); |
---|
30 | void SZ_compress_args_double_NoCkRngeNoGzip_3D_pwr(unsigned char** newByteData, double *oriData, double globalPrecision, |
---|
31 | size_t r1, size_t r2, size_t r3, size_t *outSize, double min, double max); |
---|
32 | |
---|
33 | void createRangeGroups_double(double** posGroups, double** negGroups, int** posFlags, int** negFlags); |
---|
34 | void compressGroupIDArray_double(char* groupID, TightDataPointStorageD* tdps); |
---|
35 | TightDataPointStorageD* SZ_compress_double_1D_MDQ_pwrGroup(double* oriData, size_t dataLength, int errBoundMode, |
---|
36 | double absErrBound, double relBoundRatio, double pwrErrRatio, double valueRangeSize, double medianValue_f); |
---|
37 | void SZ_compress_args_double_NoCkRngeNoGzip_1D_pwrgroup(unsigned char** newByteData, double *oriData, |
---|
38 | size_t dataLength, double absErrBound, double relBoundRatio, double pwrErrRatio, double valueRangeSize, double medianValue_f, size_t *outSize); |
---|
39 | |
---|
40 | void SZ_compress_args_double_NoCkRngeNoGzip_1D_pwr_pre_log(unsigned char** newByteData, double *oriData, double globalPrecision, size_t dataLength, size_t *outSize, double min, double max); |
---|
41 | void SZ_compress_args_double_NoCkRngeNoGzip_2D_pwr_pre_log(unsigned char** newByteData, double *oriData, double globalPrecision, size_t r1, size_t r2, size_t *outSize, double min, double max); |
---|
42 | void SZ_compress_args_double_NoCkRngeNoGzip_3D_pwr_pre_log(unsigned char** newByteData, double *oriData, double globalPrecision, size_t r1, size_t r2, size_t r3, size_t *outSize, double min, double max); |
---|
43 | |
---|
44 | #ifdef __cplusplus |
---|
45 | } |
---|
46 | #endif |
---|
47 | |
---|
48 | #endif /* ----- #ifndef _SZ_Double_PWR_H ----- */ |
---|
49 | |
---|