00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00036 #ifndef CLUSTALO_SYMMATRIX_H
00037 #define CLUSTALO_SYMMATRIX_H
00038
00039
00043 typedef struct {
00044 int nrows;
00045 int ncols;
00054 double **data;
00055 } symmatrix_t;
00056
00057
00058
00059 extern int
00060 NewSymMatrix(symmatrix_t **symmat, const int nrows, const int ncols);
00061
00062 extern void
00063 SymMatrixSetValue(symmatrix_t *symmat, const int i, const int j, const double value);
00064
00065 extern double
00066 SymMatrixGetValue(symmatrix_t *symmat, const int i, const int j);
00067
00068 extern void
00069 SymMatrixGetValueP(double **value, symmatrix_t *symmat, const int i, const int j);
00070
00071 extern void
00072 FreeSymMatrix(symmatrix_t **symmat);
00073
00074 extern void
00075 SymMatrixPrint(symmatrix_t *symmat, char **labels, const char *path);
00076
00077 extern int
00078 SymMatrixRead(char *pcFileIn, symmatrix_t **prSymMat_p);
00079
00080 #endif