00001 00023 #ifndef __UIUC_CHARM_ILSI_H 00024 #define __UIUC_CHARM_ILSI_H 00025 00026 #include "charm-api.h" 00027 #include "ilsic.h" 00028 00033 class ILSI_Comm { 00034 public: 00035 virtual ~ILSI_Comm(); 00036 00041 virtual void matrixVectorProduct(const double *src,double *dest) =0; 00042 00047 virtual double dotProduct(const double *a,const double *b) =0; 00048 }; 00049 00055 #define FORTRAN_NAME_SOLVER(CAPITALNAME,Cname,lowercasename) \ 00056 CLINKAGE void FTN_NAME(CAPITALNAME,lowercasename) \ 00057 (ILSI_Param *param, ILSI_Comm *comm,int n, const double *b, double *x) \ 00058 { Cname(param,comm,n,b,x); } 00059 00060 00061 #endif 00062