NMD
|
00001 #include <stdlib.h> 00002 #include "string.h" 00003 #include "nmd.h" 00004 00005 /*! Test setting and getting of array values */ 00006 int main(int argc,char **argv) { 00007 NMD_metadata nmd; NMDErrorCode ierr; 00008 NMDTruth flg; 00009 const char *c1 = "string1"; 00010 const char *c2 = "string2"; 00011 char *rc1,*rc2,*rc3; 00012 PetscFunctionBegin; 00013 PetscInitialize(&argc,&argv,0,0); 00014 00015 ierr = NMDCreateObject(&nmd); NMD_ERR_RETURN(ierr); 00016 00017 ierr = NMDSetValue(nmd,"catg","c1",NMDString,(void*)c1); NMD_ERR_RETURN(ierr); 00018 c2 = "string2"; 00019 ierr = NMDSetValue(nmd,"catg","c2",NMDString,(void*)c2); NMD_ERR_RETURN(ierr); 00020 ierr = NMDSetValue 00021 (nmd,"catg","c3",NMDString,(void*)"string3"); NMD_ERR_RETURN(ierr); 00022 00023 ierr = NMDGetValue(nmd,"catg","c1",NULL,&rc1,&flg); NMD_ERR_RETURN(ierr); 00024 if (!flg) NMD_ERR_REPORT("trouble finding 1"); 00025 ierr = NMDGetValue(nmd,"catg","c2",NULL,&rc2,&flg); NMD_ERR_RETURN(ierr); 00026 if (!flg) NMD_ERR_REPORT("trouble finding 2"); 00027 ierr = NMDGetValue(nmd,"catg","c3",NULL,&rc3,&flg); NMD_ERR_RETURN(ierr); 00028 if (!flg) NMD_ERR_REPORT("trouble finding 3"); 00029 00030 if (strcmp(rc1,"string1")) NMD_ERR_REPORTs("problem1",rc1); 00031 if (strcmp(rc2,"string2")) NMD_ERR_REPORTs("problem2",rc2); 00032 if (strcmp(rc3,"string3")) NMD_ERR_REPORTs("problem3",rc3); 00033 00034 ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr); 00035 00036 PetscFinalize(); 00037 PetscFunctionReturn(0); 00038 }