26 #ifndef _CORE_XMIPP_MEMORY 27 #define _CORE_XMIPP_MEMORY 43 if (nrh - nrl + 1 >= 1 && nch - ncl + 1 >= 1)
45 m = (T **) malloc((
unsigned)(nrh - nrl + 1) *
sizeof(T*));
49 for (
int i = nrl;
i <= nrh;
i++)
51 m[
i] = (T *) malloc((
unsigned)(nch - ncl + 1) *
sizeof(T));
66 for (
int i = nrh;
i >= nrl;
i--) {
67 free((
char*)(m[
i] + nrl));
78 template <
class T>
void ask_Tvolume(T *** &
m,
int nsl,
int nsh,
int nrl,
79 int nrh,
int ncl,
int nch)
81 if (nsh - nsl + 1 >= 1 && nrh - nrl + 1 >= 1 && nch - ncl + 1 >= 1)
83 m = (T ***) malloc((
unsigned)(nsh - nsl + 1) *
sizeof(T**));
87 for (
int k = nsl;
k <= nsh;
k++)
89 m[
k] = (T **) malloc((
unsigned)(nrh - nrl + 1) *
sizeof(T*));
93 for (
int i = nrl;
i <= nrh;
i++)
95 m[
k][
i] = (T *) malloc((
unsigned)(nch - ncl + 1) *
sizeof(T));
107 int nrl,
int nrh,
int ncl,
int nch)
111 for (
int k = nsh;
k >= nsl;
k--)
113 for (
int i = nrh;
i >= nrl;
i--) {
114 free((
char*)(m[
k][
i] + ncl));
116 free((
char*)(m[
k] + nrl));
118 free((
char*)(m + nsl));
void free_Tvolume(T ***&m, int nsl, int nsh, int nrl, int nrh, int ncl, int nch)
#define REPORT_ERROR(nerr, ErrormMsg)
There is not enough memory for allocation.
void free_Tmatrix(T **&m, int nrl, int nrh, int ncl, int nch)
ql0001_ & k(htemp+1),(cvec+1),(atemp+1),(bj+1),(bl+1),(bu+1),(x+1),(clamda+1), &iout, infoqp, &zero,(w+1), &lenw,(iw+1), &leniw, &glob_grd.epsmac
int freeMemory(void *ptr, size_t memsize)
char * askMemory(size_t size)
void ask_Tvolume(T ***&m, int nsl, int nsh, int nrl, int nrh, int ncl, int nch)
void ask_Tmatrix(T **&m, int nrl, int nrh, int ncl, int nch)