1a4963045SJacob Faibussowitsch #pragma once 25c6c1daeSBarry Smith 3af0996ceSBarry Smith #include <petsc/private/viewerimpl.h> /*I "petscsys.h" I*/ 43f08860eSBarry Smith #include <../src/sys/fileio/mprint.h> /* defines the queue datastructures and variables */ 55c6c1daeSBarry Smith 65c6c1daeSBarry Smith typedef struct { 75c6c1daeSBarry Smith FILE *fd; 85c6c1daeSBarry Smith PetscFileMode mode; /* The mode in which to open the file */ 95c6c1daeSBarry Smith PetscInt tab; /* how many times text is tabbed in from left */ 105c6c1daeSBarry Smith PetscInt tab_store; /* store tabs value while tabs are turned off */ 115c6c1daeSBarry Smith PetscViewer bviewer; /* if PetscViewer is a singleton, this points to mother */ 125c6c1daeSBarry Smith PetscViewer sviewer; /* if PetscViewer has a singleton, this points to singleton */ 133f08860eSBarry Smith PetscViewer subviewer; /* used with PetscViewerGetSubViewer() */ 145c6c1daeSBarry Smith char *filename; 155c6c1daeSBarry Smith PetscBool storecompressed; 165c6c1daeSBarry Smith PetscBool closefile; 171575c14dSBarry Smith PetscInt allowsynchronized; /* allow synchronized writes from any process to the viewer */ 183f08860eSBarry Smith 193f08860eSBarry Smith PrintfQueue petsc_printfqueue, petsc_printfqueuebase; 203f08860eSBarry Smith int petsc_printfqueuelength; 21e4096674SBarry Smith 229f0612e4SBarry Smith int fileunit; /* indicates the output is printed with Fortran IO */ 235c6c1daeSBarry Smith } PetscViewer_ASCII; 245c6c1daeSBarry Smith 255c6c1daeSBarry Smith typedef struct PetscViewerLink_t PetscViewerLink; 265c6c1daeSBarry Smith struct PetscViewerLink_t { 275c6c1daeSBarry Smith PetscViewer viewer; 285c6c1daeSBarry Smith struct PetscViewerLink_t *next; 295c6c1daeSBarry Smith }; 305c6c1daeSBarry Smith 31*d6acfc2dSPierre Jolivet PETSC_INTERN PetscMPIInt MPIAPI Petsc_DelViewer(MPI_Comm, PetscMPIInt, void *, void *); 32