00001 #include <stdlib.h>
00002 #include "nmd.h"
00003
00004
00005 int main(int argc,char **argv) {
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 = NMDObjectTryGetCategory
00021 (nmd,"cat2",&cat,&flg); NMD_ERR_RETURN(ierr);
00022 if (!flg) NMD_ERR_REPORT("category 2 missing");
00023
00024 ierr = NMDCategoryAllocateNewComponent
00025 (cat,"p1",NMDInt,NULL); NMD_ERR_RETURN(ierr);
00026 ierr = NMDCategoryAllocateNewComponent
00027 (cat,"ptwo",NMDReal,NULL); NMD_ERR_RETURN(ierr);
00028 ierr = NMDCategoryAllocateNewComponent
00029 (cat,"p3",NMDIntarray,NULL); NMD_ERR_RETURN(ierr);
00030
00031 ierr = NMDObjectTryGetCategory
00032 (nmd,"catone",&cat,&flg); NMD_ERR_RETURN(ierr);
00033 if (!flg) NMD_ERR_REPORT("category 1 missing")
00034
00035 ierr = NMDCategoryAllocateNewComponent
00036 (cat,"pone",NMDString,NULL); NMD_ERR_RETURN(ierr);
00037 ierr = NMDCategoryAllocateNewComponent
00038 (cat,"ptwo",NMDRealarray,NULL); NMD_ERR_RETURN(ierr);
00039
00040 }
00041
00042 ierr = NMDDestroyObject(nmd); NMD_ERR_RETURN(ierr);
00043 PetscFinalize();
00044 PetscFunctionReturn(0);
00045 }