alloc.h File Reference

Header for generic allocation routines. More...

#include <stdio.h>
#include <stdlib.h>
#include "_generic.h"

Go to the source code of this file.

Defines

#define fvector(nl, nh)   (float *) generic_make_vector(nl,nh,sizeof(float))
#define ivector(nl, nh)   (int *) generic_make_vector(nl,nh,sizeof(int))
#define dvector(nl, nh)   (double *) generic_make_vector(nl,nh,sizeof(double))
#define fmatrix(nrl, nrh, ncl, nch)   (float **) generic_make_matrix(nrl,nrh,ncl,nch,sizeof(float))
#define imatrix(nrl, nrh, ncl, nch)   (int **) generic_make_matrix(nrl,nrh,ncl,nch,sizeof(int))
#define dmatrix(nrl, nrh, ncl, nch)   (double **) generic_make_matrix(nrl,nrh,ncl,nch,sizeof(double))
#define farray(nrl, nrh, ncl, nch, nzl, nzh)
#define iarray(nrl, nrh, ncl, nch, nzl, nzh)
#define darray(nrl, nrh, ncl, nch, nzl, nzh)
#define free_fvector(v, nl, nh)   generic_free_vector((VOID *) v,nl,nh,sizeof(float))
#define free_ivector(v, nl, nh)   generic_free_vector((VOID *) v,nl,nh,sizeof(int))
#define free_dvector(v, nl, nh)   generic_free_vector((VOID *) v,nl,nh,sizeof(double))
#define free_fmatrix(v, nrl, nrh, ncl, nch)   generic_free_matrix((VOID **) v,nrl,nrh, ncl, nch,sizeof(float))
#define free_imatrix(v, nrl, nrh, ncl, nch)   generic_free_matrix((VOID **) v,nrl,nrh, ncl, nch,sizeof(int))
#define free_dmatrix(v, nrl, nrh, ncl, nch)   generic_free_matrix((VOID **) v,nrl,nrh,ncl, nch,sizeof(double))
#define free_farray(v, nrl, nrh, ncl, nch, nzl, nzh)
#define free_iarray(v, nrl, nrh, ncl, nch, nzl, nzh)
#define free_darray(v, nrl, nrh, ncl, nch, nzl, nzh)
#define transpose_fmatrix(m, nrl, nrh, ncl, nch)
#define transpose_imatrix(m, nrl, nrh, ncl, nch)
#define transpose_dmatrix(m, nrl, nrh, ncl, nch)
#define new(type)   (type *) malloc((size_t) sizeof( type ))
#define new_array(type, n)   (type*) malloc((size_t) sizeof(type)*n)

Functions

VOIDgeneric_make_vector ()
 EXTERNS *.

VOID ** generic_make_matrix ()
VOID *** generic_make_array ()
void generic_free_vector ()
void generic_free_matrix ()
void generic_free_array ()
VOID ** generic_transpose_matrix ()
int print_ivector ()
int print_fvector ()
int print_dvector ()
int print_imatrix ()
int print_fmatrix ()
int print_dmatrix ()
int print_farray ()
int read_ivector ()
int read_dvector ()
int read_fvector ()
int read_dmatrix ()


Detailed Description

Header for generic allocation routines.

These routines are derived from similar methods in Numerical Recipies in C. These routines have largely been supplanted by the BasicArray class and its derived classes. However, on occassion I find that I _really_ need to program with C, and these come in handy. For that reason, these should probably be better documented, but not right now...

Author:
William E. Hart

Define Documentation

#define darray nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

(double ***) generic_make_array(nrl,nrh,ncl,nch,nzl,nzh, \
                                                        sizeof(double))

#define farray nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

(float ***) generic_make_array(nrl,nrh,ncl,nch,nzl,nzh, \
                                                        sizeof(float))

#define free_darray v,
nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

generic_free_array((VOID ***) v,nrl,nrh, ncl,nch,nzl,nzh,\
                                                sizeof(double))

#define free_farray v,
nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

generic_free_array((VOID ***) v,nrl,nrh, ncl, nch,nzl,nzh,\
                                                sizeof(float))

#define free_iarray v,
nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

generic_free_array((VOID ***) v,nrl,nrh, ncl, nch,nzl,nzh,\
                                                sizeof(int))

#define iarray nrl,
nrh,
ncl,
nch,
nzl,
nzh   
 

Value:

(int ***) generic_make_array(nrl,nrh,ncl,nch,nzl,nzh, \
                                                        sizeof(int))

#define transpose_dmatrix m,
nrl,
nrh,
ncl,
nch   
 

Value:

(double **) generic_transpose_matrix((VOID **)m,nrl,nrh, ncl, nch,\
                                sizeof(double))

#define transpose_fmatrix m,
nrl,
nrh,
ncl,
nch   
 

Value:

(float **) generic_transpose_matrix((VOID **) m,nrl,nrh, ncl, nch,\
                                sizeof(float))

#define transpose_imatrix m,
nrl,
nrh,
ncl,
nch   
 

Value:

(int **) generic_transpose_matrix((VOID **) m,nrl,nrh, ncl, nch,\
                                sizeof(int))