diff options
Diffstat (limited to 'baseline/source/epic/epic.h')
| -rw-r--r-- | baseline/source/epic/epic.h | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/baseline/source/epic/epic.h b/baseline/source/epic/epic.h deleted file mode 100644 index 5e5675f..0000000 --- a/baseline/source/epic/epic.h +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | #ifndef __EPIC_H_ | ||
| 2 | #define __EPIC_H_ | ||
| 3 | |||
| 4 | #define EPIC_VERSION 1.1 | ||
| 5 | |||
| 6 | /* ============= FUNDAMENTAL LIMITATIONS ============= */ | ||
| 7 | |||
| 8 | /* Maximum x- or y-size of image */ | ||
| 9 | #define MAX_IMAGE_DIM 16384 | ||
| 10 | |||
| 11 | /* Maximum number of pyramid levels (value 3*levs+1 stored in 5 bits). | ||
| 12 | This doesn't need to be larger than log2(MAX_IMAGE_DIM/FILTER_SIZE). */ | ||
| 13 | #define MAX_LEVELS 10 | ||
| 14 | |||
| 15 | /* Maximum number of quantization bins. This essentially determines | ||
| 16 | the maximum depth image to be represented. */ | ||
| 17 | #define MAX_BINS 511 | ||
| 18 | |||
| 19 | /* ============= SECONDARY (derived) LIMITATIONS ============= */ | ||
| 20 | |||
| 21 | /* This number determines the precision of the stored binsizes: | ||
| 22 | stored coefficients are accurate to +/- (1/SCALE_FACTOR). | ||
| 23 | On the other hand, this number also will limit the maximum amount | ||
| 24 | of compression. | ||
| 25 | It should not be more than [2^(8*sizeof(BinValueType))]/256. */ | ||
| 26 | #define SCALE_FACTOR 128 | ||
| 27 | |||
| 28 | /* This number must be consistent with the filters that are | ||
| 29 | hardwired into epic.c */ | ||
| 30 | #define FILTER_SIZE 15 | ||
| 31 | |||
| 32 | /* Log (base 2) of MAX_IMAGE_DIM^2: (bits required to store the dimensions) */ | ||
| 33 | #define LOG_MAX_IMAGE_SIZE 32 | ||
| 34 | |||
| 35 | /* The type of the quantized images. Must be SIGNED, and capable of holding | ||
| 36 | values in the range [-MAX_BINS, MAX_BINS] */ | ||
| 37 | typedef short BinIndexType; | ||
| 38 | |||
| 39 | /* The type used to represent the binsizes. Should be UNSIGNED. If this is | ||
| 40 | changed, be sure to change the places in epic.c and unepic.c where | ||
| 41 | binsizes are written or read from files. */ | ||
| 42 | typedef unsigned short BinValueType; | ||
| 43 | |||
| 44 | /* Number of possible values for a symbol. This must be at least | ||
| 45 | (MAX_BINS * 4) (one sign bit, one tag bit)... */ | ||
| 46 | #define NUM_SYMBOL_VALUES 65536 | ||
| 47 | |||
| 48 | /* Function prototypes. */ | ||
| 49 | void epic_build_pyr( float *image, int x_size, int y_size, int num_levels, | ||
| 50 | float *lo_filter, float *hi_filter, int filter_size ); | ||
| 51 | |||
| 52 | void epic_build_level( float *image, int level_x_size, int level_y_size, | ||
| 53 | float *lo_filter, float *hi_filter, | ||
| 54 | int filter_size, float *result_block ); | ||
| 55 | |||
| 56 | void epic_internal_transpose( register float *mat, int rows, | ||
| 57 | register int cols ); | ||
| 58 | |||
| 59 | void epic_reflect1( register float *filt, register int x_dim, int y_dim, | ||
| 60 | int x_pos, int y_pos, register float *result, int f_or_e ); | ||
| 61 | |||
| 62 | void epic_internal_filter( register float *image, register int x_dim, | ||
| 63 | register int y_dim, float *filt, | ||
| 64 | register float *temp, register int x_fdim, | ||
| 65 | register int y_fdim, int xgrid_start, | ||
| 66 | int xgrid_step, int ygrid_start, int ygrid_step, | ||
| 67 | register float *result ); | ||
| 68 | |||
| 69 | void epic_reflect1( float *filt, int x_dim, int y_dim, int x_pos, int y_pos, | ||
| 70 | float *result, int f_or_e ); | ||
| 71 | |||
| 72 | #endif // __EPIC_H_ | ||
