2019-03-14 15:04:34 +00:00
|
|
|
//
|
|
|
|
// php-armadillo/interfaces.cc
|
|
|
|
//
|
|
|
|
// @Author CismonX
|
|
|
|
//
|
|
|
|
|
|
|
|
#include "interfaces.hh"
|
|
|
|
|
|
|
|
#define N_INT "Internal\\"
|
|
|
|
|
|
|
|
namespace php_arma
|
|
|
|
{
|
|
|
|
void internal_interfaces_init()
|
|
|
|
{
|
2019-03-18 14:49:42 +00:00
|
|
|
base_ce = interface_register(N_INT "Base");
|
2019-03-14 15:04:34 +00:00
|
|
|
|
2019-03-18 14:49:42 +00:00
|
|
|
vector_ce = interface_register(N_INT "Vector");
|
|
|
|
matrix_ce = interface_register(N_INT "Matrix");
|
2019-03-14 15:04:34 +00:00
|
|
|
|
2019-03-18 14:49:42 +00:00
|
|
|
dense_ce = interface_register(N_INT "Dense",
|
|
|
|
base_ce);
|
|
|
|
sparse_ce = interface_register(N_INT "Sparse",
|
|
|
|
base_ce);
|
2019-03-14 15:04:34 +00:00
|
|
|
|
2019-03-18 14:49:42 +00:00
|
|
|
dense_vector_ce = interface_register(N_INT "DenseVector",
|
|
|
|
vector_ce, dense_ce);
|
|
|
|
dense_matrix_ce = interface_register(N_INT "DenseMatrix",
|
|
|
|
matrix_ce, dense_ce);
|
|
|
|
sparse_vector_ce = interface_register(N_INT "SparseVector",
|
|
|
|
vector_ce, sparse_ce);
|
|
|
|
sparse_matrix_ce = interface_register(N_INT "SparseMatrix",
|
|
|
|
matrix_ce, sparse_ce);
|
2019-03-14 15:04:34 +00:00
|
|
|
|
2019-03-18 14:49:42 +00:00
|
|
|
resizable_ce = interface_register(N_INT "Resizable");
|
|
|
|
resizable_vector_ce = interface_register(N_INT "ResizableVector",
|
|
|
|
resizable_ce, vector_ce);
|
|
|
|
resizable_matrix_ce = interface_register(N_INT "ResizableMatrix",
|
|
|
|
resizable_ce, matrix_ce);
|
|
|
|
dense_resizable_vector_ce = interface_register(N_INT "DenseResizableVector",
|
|
|
|
dense_vector_ce, resizable_vector_ce);
|
|
|
|
dense_resizable_matrix_ce = interface_register(N_INT "DenseResizableMatrix",
|
|
|
|
dense_matrix_ce, resizable_matrix_ce);
|
|
|
|
sparse_resizable_vector_ce = interface_register(N_INT "SparseResizableVector",
|
|
|
|
sparse_vector_ce, resizable_vector_ce);
|
|
|
|
sparse_resizable_matrix_ce = interface_register(N_INT "SparseResizableMatrix",
|
|
|
|
sparse_matrix_ce, resizable_matrix_ce);
|
|
|
|
|
|
|
|
non_resizable_ce = interface_register(N_INT "NonResizable");
|
|
|
|
non_resizable_vector_ce = interface_register(N_INT "NonResizableVector",
|
|
|
|
non_resizable_ce);
|
|
|
|
non_resizable_matrix_ce = interface_register(N_INT "NonResizableMatrix",
|
|
|
|
non_resizable_ce);
|
|
|
|
dense_non_resizable_vector_ce = interface_register(N_INT "DenseNonResizableVector",
|
|
|
|
dense_vector_ce, non_resizable_vector_ce);
|
|
|
|
dense_non_resizable_matrix_ce = interface_register(N_INT "DenseNonResizableMatrix",
|
|
|
|
dense_matrix_ce, non_resizable_matrix_ce);
|
|
|
|
sparse_non_resizable_matrix_ce = interface_register(N_INT "SparseNonResizableMatrix",
|
|
|
|
sparse_matrix_ce, non_resizable_matrix_ce);
|
|
|
|
|
|
|
|
subview_ce = interface_register(N_INT "Subview");
|
|
|
|
diagonal_ce = interface_register(N_INT "Diagonal",
|
|
|
|
base_ce, non_resizable_ce, subview_ce);
|
|
|
|
scalar_ce = interface_register(N_INT "Scalar",
|
|
|
|
subview_ce);
|
2019-03-14 15:04:34 +00:00
|
|
|
}
|
|
|
|
|
2019-03-18 14:49:42 +00:00
|
|
|
zend_class_entry *base_ce;
|
|
|
|
|
|
|
|
zend_class_entry *vector_ce, *matrix_ce;
|
|
|
|
|
|
|
|
zend_class_entry *dense_ce, *sparse_ce;
|
|
|
|
zend_class_entry *dense_vector_ce, *dense_matrix_ce;
|
|
|
|
zend_class_entry *sparse_vector_ce, *sparse_matrix_ce;
|
|
|
|
|
|
|
|
zend_class_entry *resizable_ce;
|
|
|
|
zend_class_entry *resizable_vector_ce, *resizable_matrix_ce;
|
|
|
|
zend_class_entry *dense_resizable_vector_ce, *dense_resizable_matrix_ce;
|
|
|
|
zend_class_entry *sparse_resizable_vector_ce, *sparse_resizable_matrix_ce;
|
|
|
|
|
|
|
|
zend_class_entry *non_resizable_ce;
|
|
|
|
zend_class_entry *non_resizable_vector_ce, *non_resizable_matrix_ce;
|
|
|
|
zend_class_entry *dense_non_resizable_vector_ce, *dense_non_resizable_matrix_ce;
|
|
|
|
zend_class_entry *sparse_non_resizable_matrix_ce;
|
|
|
|
|
|
|
|
zend_class_entry *subview_ce;
|
|
|
|
zend_class_entry *diagonal_ce;
|
|
|
|
zend_class_entry *scalar_ce;
|
2019-03-14 15:04:34 +00:00
|
|
|
}
|