1 #if !defined(__BAGIMPL)
2 #define __BAGIMPL
3 #include <petscbag.h>
4 
5 #define PETSC_BAG_NAME_LENGTH 64
6 #define PETSC_BAG_HELP_LENGTH 128
7 
8 struct _n_PetscBagItem {
9   PetscDataType dtype;
10   PetscInt      offset;
11   PetscInt      msize;
12   char          name[PETSC_BAG_NAME_LENGTH],help[PETSC_BAG_HELP_LENGTH];
13   char          **list;
14   PetscBool     freelist;
15   PetscBagItem  next;
16 };
17 
18 struct _n_PetscBag {
19   MPI_Comm     bagcomm;
20   PetscInt     bagsize;
21   void         *structlocation;
22   PetscInt     count;
23   char         bagname[PETSC_BAG_NAME_LENGTH];
24   char         baghelp[PETSC_BAG_HELP_LENGTH];
25   char         *bagprefix;
26   PetscBagItem bagitems;
27 };
28 
29 
30 #endif
31