#ifdef SUPERLU_EXPORTS
#define SUPERLU_API __declspec(dllexport)
#else
#define SUPERLU_API __declspec(dllimport)
#endif


class CKLU 
	{

	private:	

	public:
		static int SUPERLU_API d_G_KLU_Factorization ( int *M, double *csrMatrix_A, int *csrColInd_A, int *csrRowPtr_A, 
			int *nnz_U, double **csr_U, int **csrColInd_U, int **csrRowPtr_U,
			double **csrL_Diagonal, int Ordering);

		static int SUPERLU_API d_J_KLU_Factorization(int *M, int *N, int *nnz_J, 
			double *csrMatrix_J, int *csrColInd_J, int *csrRowPtr_J,
			double *Weight,
			int *nnz_U, double **csr_U, int **csrColInd_U, int **csrRowPtr_U,
			double **csrL_Diagonal, int Ordering);

		static void SUPERLU_API KLU_Free_Memory(void);


};