NMD
Functions
u8.c File Reference
#include <stdlib.h>
#include "string.h"
#include "nmd.h"
Include dependency graph for u8.c:

Go to the source code of this file.

Functions

int main (int argc, char **argv)

Function Documentation

int main ( int  argc,
char **  argv 
)

Test setting and getting of array values

Definition at line 6 of file u8.c.

References NMDCreateObject(), NMDDestroyObject(), NMDGetValue(), NMDSetValue(), and NMDString.

                               {
  NMD_metadata nmd; NMDErrorCode ierr; 
  NMDTruth flg;
  const char *c1 = "string1";
  const char *c2 = "string2";
  char *rc1,*rc2,*rc3;
  PetscFunctionBegin;
  PetscInitialize(&argc,&argv,0,0);

  ierr = NMDCreateObject(&nmd); NMD_ERR_RETURN(ierr);

  ierr = NMDSetValue(nmd,"catg","c1",NMDString,(void*)c1); NMD_ERR_RETURN(ierr);
  c2 = "string2";
  ierr = NMDSetValue(nmd,"catg","c2",NMDString,(void*)c2); NMD_ERR_RETURN(ierr);
  ierr = NMDSetValue
    (nmd,"catg","c3",NMDString,(void*)"string3"); NMD_ERR_RETURN(ierr);

  ierr = NMDGetValue(nmd,"catg","c1",NULL,&rc1,&flg); NMD_ERR_RETURN(ierr);
  if (!flg) NMD_ERR_REPORT("trouble finding 1");
  ierr = NMDGetValue(nmd,"catg","c2",NULL,&rc2,&flg); NMD_ERR_RETURN(ierr);
  if (!flg) NMD_ERR_REPORT("trouble finding 2");
  ierr = NMDGetValue(nmd,"catg","c3",NULL,&rc3,&flg); NMD_ERR_RETURN(ierr);
  if (!flg) NMD_ERR_REPORT("trouble finding 3");

  if (strcmp(rc1,"string1")) NMD_ERR_REPORTs("problem1",rc1);
  if (strcmp(rc2,"string2")) NMD_ERR_REPORTs("problem2",rc2);
  if (strcmp(rc3,"string3")) NMD_ERR_REPORTs("problem3",rc3);

  ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr);

  PetscFinalize();
  PetscFunctionReturn(0);
}

Here is the call graph for this function: