summaryrefslogtreecommitdiff
path: root/anthy/matrix.h
diff options
context:
space:
mode:
Diffstat (limited to 'anthy/matrix.h')
-rw-r--r--anthy/matrix.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/anthy/matrix.h b/anthy/matrix.h
new file mode 100644
index 0000000..aae89d1
--- /dev/null
+++ b/anthy/matrix.h
@@ -0,0 +1,26 @@
+/* 疎行列を扱うためのコード */
+#ifndef _matrix_h_included_
+#define _matrix_h_included_
+
+struct matrix_image {
+ /* number of 'int elements */
+ int size;
+ /* array of 'int */
+ int *image;
+};
+
+struct sparse_matrix;
+struct sparse_array;
+
+/* 行列を構成するAPI */
+struct sparse_matrix *anthy_sparse_matrix_new(void);
+void anthy_sparse_matrix_set(struct sparse_matrix *m, int row, int column,
+ int value, void *ptr);
+int anthy_sparse_matrix_get_int(struct sparse_matrix *m, int row, int column);
+void anthy_sparse_matrix_make_matrix(struct sparse_matrix *m);
+/* 行列イメージを構築するAPI(配列はhost byte order) */
+struct matrix_image *anthy_matrix_image_new(struct sparse_matrix *s);
+/* 行列イメージにアクセスするAPI(配列はnetwork byte order) */
+int anthy_matrix_image_peek(int *im, int row, int col);
+
+#endif