u6.c File Reference

#include <stdlib.h>
#include "nmd.h"

Include dependency graph for u6.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 existence tests of components

Definition at line 5 of file u6.c.

References NMDCategoryAllocateNewComponent(), NMDCategoryTryGetComponent(), NMDCreateObject(), NMDDestroyObject(), NMDInt, NMDIntarray, NMDObjectAllocateNewCategory(), NMDObjectHasCategoryComponent(), NMDObjectTryGetCategory(), NMDReal, NMDRealarray, and NMDString.

00005                                {
00006   NMD_metadata nmd; NMDErrorCode ierr; 
00007   PetscFunctionBegin;
00008   PetscInitialize(&argc,&argv,0,0);
00009   ierr = NMDCreateObject(&nmd); NMD_ERR_RETURN(ierr);
00010 
00011   {
00012     NMD_metadata_category cat; NMDTruth flg;
00013 
00014     ierr = NMDObjectAllocateNewCategory
00015       (nmd,"catone",NULL); NMD_ERR_RETURN(ierr);
00016 
00017     ierr = NMDObjectAllocateNewCategory
00018       (nmd,"cat2",&cat); NMD_ERR_RETURN(ierr);
00019 
00020     ierr = NMDCategoryAllocateNewComponent
00021       (cat,"p1",NMDInt,NULL); NMD_ERR_RETURN(ierr);
00022     ierr = NMDCategoryAllocateNewComponent
00023       (cat,"ptwo",NMDReal,NULL); NMD_ERR_RETURN(ierr);
00024     ierr = NMDCategoryAllocateNewComponent
00025       (cat,"p3",NMDIntarray,NULL); NMD_ERR_RETURN(ierr);
00026 
00027     ierr = NMDObjectTryGetCategory
00028       (nmd,"catone",&cat,&flg); NMD_ERR_RETURN(ierr);
00029     if (!flg) NMD_ERR_REPORT("category 1 missing")
00030 
00031     ierr = NMDCategoryAllocateNewComponent
00032       (cat,"pone",NMDString,NULL); NMD_ERR_RETURN(ierr);
00033     ierr = NMDCategoryAllocateNewComponent
00034       (cat,"ptwo",NMDRealarray,NULL); NMD_ERR_RETURN(ierr);
00035 
00036     /* and here are the tests */
00037     ierr = NMDCategoryTryGetComponent
00038       (cat,"pone",NULL,&flg); NMD_ERR_RETURN(ierr);
00039     if (!flg) NMD_ERR_REPORT("Did not find pone component");
00040     ierr = NMDCategoryTryGetComponent
00041       (cat,"ptwo",NULL,&flg); NMD_ERR_RETURN(ierr);
00042     if (!flg) NMD_ERR_REPORT("Did not find ptwo component");
00043     ierr = NMDCategoryTryGetComponent
00044       (cat,"pthree",NULL,&flg); NMD_ERR_RETURN(ierr);
00045     if (flg) NMD_ERR_REPORT("Found non-existing component");
00046     ierr = NMDObjectHasCategoryComponent
00047       (nmd,"catone","p1",&flg); NMD_ERR_RETURN(ierr);
00048     if (flg) NMD_ERR_REPORT("found component in wrong category");
00049   }
00050 
00051   ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr);
00052   PetscFinalize();
00053   PetscFunctionReturn(0);
00054 }

Here is the call graph for this function:


Generated on Sun Oct 4 03:59:33 2009 for NMD by  doxygen 1.5.9