00001 00017 #ifndef _MEMALLOC_H_ 00018 #define _MEMALLOC_H_ 00019 00020 #include "global.h" 00021 00022 int get_mem2D(byte ***array2D, int dim0, int dim1); 00023 int get_mem3D(byte ****array3D, int dim0, int dim1, int dim2); 00024 int get_mem4D(byte *****array4D, int dim0, int dim1, int dim2, int dim3); 00025 00026 int get_mem2Dint(int ***array2D, int rows, int columns); 00027 int get_mem3Dint(int ****array3D, int frames, int rows, int columns); 00028 int get_mem4Dint(int *****array4D, int idx, int frames, int rows, int columns ); 00029 int get_mem5Dint(int ******array5D, int refs, int blocktype, int rows, int columns, int component); 00030 00031 int get_mem2Dint64(int64 ***array2D, int rows, int columns); 00032 int get_mem3Dint64(int64 ****array3D, int frames, int rows, int columns); 00033 00034 int get_mem2Dshort(short ***array2D, int dim0, int dim1); 00035 int get_mem3Dshort(short ****array3D, int dim0, int dim1, int dim2); 00036 int get_mem4Dshort(short *****array4D, int dim0, int dim1, int dim2, int dim3); 00037 int get_mem5Dshort(short ******array5D, int dim0, int dim1, int dim2, int dim3, int dim4); 00038 int get_mem6Dshort(short *******array6D, int dim0, int dim1, int dim2, int dim3, int dim4, int dim5); 00039 int get_mem7Dshort(short ********array7D, int dim0, int dim1, int dim2, int dim3, int dim4, int dim5, int dim6); 00040 00041 int get_mem2Dpel(imgpel ***array2D, int rows, int columns); 00042 int get_mem3Dpel(imgpel ****array3D, int frames, int rows, int columns); 00043 int get_mem4Dpel(imgpel *****array4D, int sub_x, int sub_y, int rows, int columns); 00044 int get_mem5Dpel(imgpel ******array5D, int dims, int sub_x, int sub_y, int rows, int columns); 00045 00046 00047 void free_mem2D (byte **array2D); 00048 void free_mem3D (byte ***array3D); 00049 void free_mem4D (byte ****array4D); 00050 00051 00052 void free_mem2Dint (int **array2D); 00053 void free_mem3Dint (int ***array3D); 00054 void free_mem4Dint (int ****array4D); 00055 void free_mem5Dint (int *****array5D); 00056 00057 void free_mem2Dint64(int64 **array2D); 00058 void free_mem3Dint64(int64 ***array3D); 00059 00060 void free_mem2Dshort(short **array2D); 00061 void free_mem3Dshort(short ***array3D); 00062 void free_mem4Dshort(short ****array4D); 00063 void free_mem5Dshort(short *****array5D); 00064 void free_mem6Dshort(short ******array6D); 00065 void free_mem7Dshort(short *******array7D); 00066 00067 void free_mem2Dpel (imgpel **array2D); 00068 void free_mem3Dpel (imgpel ***array3D); 00069 void free_mem4Dpel (imgpel ****array4D); 00070 void free_mem5Dpel (imgpel *****array5D); 00071 void free_mem2Ddouble(double **array2D); 00072 00073 void no_mem_exit(char *where); 00074 00075 #endif