2: #ifndef _VIEWERIMPL
3: #define _VIEWERIMPL
5: #include petsc.h
7: struct _PetscViewerOps {
8: PetscErrorCode (*destroy)(PetscViewer);
9: PetscErrorCode (*view)(PetscViewer,PetscViewer);
10: PetscErrorCode (*flush)(PetscViewer);
11: PetscErrorCode (*getsingleton)(PetscViewer,PetscViewer*);
12: PetscErrorCode (*restoresingleton)(PetscViewer,PetscViewer*);
13: PetscErrorCode (*getsubcomm)(PetscViewer,MPI_Comm,PetscViewer*);
14: PetscErrorCode (*restoresubcomm)(PetscViewer,MPI_Comm,PetscViewer*);
15: PetscErrorCode (*setfromoptions)(PetscViewer);
16: };
18: /*
19: Defines the viewer data structure.
20: */
21: struct _p_PetscViewer {
22: PETSCHEADER(struct _PetscViewerOps);
23: PetscViewerFormat format,formats[10];
24: int iformat;
25: void *data;
26: };
30: #endif