1: #pragma once 3: #include <petsc/private/viewerimpl.h> 4: #include <../src/sys/fileio/mprint.h> 6: typedef struct { 7: FILE *fd; 8: PetscFileMode mode; /* The mode in which to open the file */ 9: PetscInt tab; /* how many times text is tabbed in from left */ 10: PetscInt tab_store; /* store tabs value while tabs are turned off */ 11: PetscViewer bviewer; /* if PetscViewer is a singleton, this points to mother */ 12: PetscViewer sviewer; /* if PetscViewer has a singleton, this points to singleton */ 13: PetscViewer subviewer; /* used with PetscViewerGetSubViewer() */ 14: char *filename; 15: PetscBool storecompressed; 16: PetscBool closefile; 17: PetscInt allowsynchronized; /* allow synchronized writes from any process to the viewer */ 19: PrintfQueue petsc_printfqueue, petsc_printfqueuebase; 20: int petsc_printfqueuelength; 22: PetscInt fileunit; /* indicates the output is printed with Fortran IO */ 23: } PetscViewer_ASCII; 25: typedef struct PetscViewerLink_t PetscViewerLink; 26: struct PetscViewerLink_t { 27: PetscViewer viewer; 28: struct PetscViewerLink_t *next; 29: }; 31: PETSC_EXTERN PetscMPIInt MPIAPI Petsc_DelViewer(MPI_Comm, PetscMPIInt, void *, void *);