Actual source code: vtkvimpl.h
petsc-3.10.5 2019-03-28
Report Typos and Errors

      1: #if !defined(_VTKVIMPL_H)
      2: #define _VTKVIMPL_H

      4:  #include <petsc/private/viewerimpl.h>

      6: typedef struct _n_PetscViewerVTKObjectLink *PetscViewerVTKObjectLink;
      7: struct _n_PetscViewerVTKObjectLink {
      8:   PetscViewerVTKFieldType  ft;
      9:   PetscObject              vec;
     10:   PetscViewerVTKObjectLink next;
     11: };

     13: typedef struct {
     14:   char                     *filename;
     15:   PetscFileMode            btype;
     16:   PetscObject              dm;
     17:   PetscViewerVTKObjectLink link;
     18:   PetscErrorCode (*write)(PetscObject,PetscViewer);
     19: } PetscViewer_VTK;

     21: PETSC_EXTERN PetscErrorCode PetscViewerVTKFWrite(PetscViewer,FILE*,const void*,PetscInt,MPI_Datatype);

     23: #if defined(PETSC_HAVE_STDINT_H) /* The VTK format requires a 32-bit integer */
     24: typedef int32_t PetscVTKInt;
     25: #else                            /* Hope int is 32 bits */
     26: typedef int PetscVTKInt;
     27: #endif
     28: typedef unsigned char PetscVTKType;

     30: #define PETSC_VTK_INT_MAX  2147483647
     31: #define PETSC_VTK_INT_MIN -2147483647
     32: #if defined(PETSC_USE_64BIT_INDICES)
     33: #  define PetscVTKIntCheck(a)  if ((a) > PETSC_VTK_INT_MAX) SETERRQ(PETSC_COMM_SELF,PETSC_ERR_ARG_OUTOFRANGE,"Array too long for 32-bit VTK binary format")
     34: #  define PetscVTKIntCast(a) (PetscVTKInt)(a);PetscVTKIntCheck(a)
     35: #else
     36: #  define PetscVTKIntCheck(a)
     37: #  define PetscVTKIntCast(a) a
     38: #endif

     40: #endif