#ifndef _MAGICKCORE_MATRIX_H
#define _MAGICKCORE_MATRIX_H
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
typedef struct _MatrixInfo
MatrixInfo;
extern MagickExport double
**AcquireMagickMatrix(const size_t,const size_t),
**RelinquishMagickMatrix(double **,const size_t);
extern MagickExport Image
*MatrixToImage(const MatrixInfo *,ExceptionInfo *);
extern MagickExport MagickBooleanType
GaussJordanElimination(double **,double **,const size_t,const size_t),
GetMatrixElement(const MatrixInfo *,const ssize_t,const ssize_t,void *),
NullMatrix(MatrixInfo *),
SetMatrixElement(const MatrixInfo *,const ssize_t,const ssize_t,const void *);
MagickExport MatrixInfo
*AcquireMatrixInfo(const size_t,const size_t,const size_t,ExceptionInfo *),
*DestroyMatrixInfo(MatrixInfo *);
MagickExport size_t
GetMatrixColumns(const MatrixInfo *),
GetMatrixRows(const MatrixInfo *);
extern MagickExport void
LeastSquaresAddTerms(double **,double **,const double *,const double *,
const size_t,const size_t);
#if defined(__cplusplus) || defined(c_plusplus)
}
#endif
#endif