00001 #include <stdlib.h>
00002 #include "memory.h"
00003 #include "nmd.h"
00004
00005
00006 int main(int argc,char **argv) {
00007 NMD_metadata nmd,nmd2; NMDErrorCode ierr;
00008 int i=5; double r=6.7;
00009 PetscFunctionBegin;
00010 PetscInitialize(&argc,&argv,0,0);
00011
00012 ierr = NMDCreateObject(&nmd); NMD_ERR_RETURN(ierr);
00013 ierr = NMDCreateObject(&nmd2); NMD_ERR_RETURN(ierr);
00014
00015 i = 1.12;
00016 ierr = NMDSetValue(nmd,"cat1","cmp1",NMDInt,&i); NMD_ERR_RETURN(ierr);
00017 i = 2.81;
00018 ierr = NMDSetValue(nmd,"cat1","cmp2",NMDInt,&i); NMD_ERR_RETURN(ierr);
00019 r = 3.14;
00020 ierr = NMDSetValue(nmd,"cat1","cmp3",NMDReal,&r); NMD_ERR_RETURN(ierr);
00021 r = 5.21;
00022 ierr = NMDSetValue(nmd,"cat1","cmp4",NMDReal,&r); NMD_ERR_RETURN(ierr);
00023
00024 ierr = NMDCloneObject(nmd,nmd2); NMD_ERR_RETURN(ierr);
00025 {
00026 char *s1,*s2;
00027
00028 ierr = NMDReportObject(nmd,NMDFalse,&s1,&s2,'\n',NULL,NULL); NMD_ERR_RETURN(ierr);
00029 printf("keys:\n%s\nvalues:\n%s\n",s1,s2);
00030 NMD_FREE(s1);
00031 NMD_FREE(s2);
00032
00033 ierr = NMDReportObject(nmd2,NMDFalse,&s1,&s2,'\n',NULL,NULL); NMD_ERR_RETURN(ierr);
00034 printf("keys:\n%s\nvalues:\n%s\n",s1,s2);
00035 NMD_FREE(s1);
00036 NMD_FREE(s2);
00037 }
00038
00039 ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr);
00040 ierr = NMDDestroyObject(nmd2); NMD_ERR_RETURN(ierr);
00041
00042 PetscFinalize();
00043 PetscFunctionReturn(0);
00044 }