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