#ifndef ULMBLAS_H
#define ULMBLAS_H
#include <stdbool.h>
#include <stddef.h>
void
dcopy(size_t n,
const double *x, ptrdiff_t incX,
double *y, ptrdiff_t incY);
void
daxpy(size_t n, double alpha,
const double *x, ptrdiff_t incX,
double *y, ptrdiff_t incY);
double
ddot(size_t n,
const double *x, ptrdiff_t incX,
const double *y, ptrdiff_t incY);
void
dscal(size_t n,
double alpha,
double *x, ptrdiff_t incX);
size_t
idamax(size_t n, const double *x, ptrdiff_t incX);
void
dswap(size_t n, double *x, ptrdiff_t incX, double *y, ptrdiff_t incY);
void
dgemv(size_t m, size_t n,
double alpha,
const double *A, ptrdiff_t incRowA, ptrdiff_t incColA,
const double *x, ptrdiff_t incX,
double beta,
double *y, ptrdiff_t incY);
void
dger(size_t m, size_t n,
double alpha,
const double *x, ptrdiff_t incX,
const double *y, ptrdiff_t incY,
double *A, ptrdiff_t incRowA, ptrdiff_t incColA);
void
dtrsv(size_t n, bool lower, bool unit,
const double *A, ptrdiff_t incRowA, ptrdiff_t incColA,
double *x, ptrdiff_t incX);
ptrdiff_t
dgetrf(size_t m, size_t n,
double *A, ptrdiff_t incRowA, ptrdiff_t incColA,
size_t *p, ptrdiff_t incP);
#endif