1 /* $Id: viewer.h,v 1.38 1997/01/06 20:44:46 bsmith Exp bsmith $ */ 2 3 #if !defined(__VIEWER_PACKAGE) 4 #define __VIEWER_PACKAGE 5 6 #include "petsc.h" 7 8 typedef struct _Viewer* Viewer; 9 #define VIEWER_COOKIE PETSC_COOKIE+1 10 typedef enum { MATLAB_VIEWER,ASCII_FILE_VIEWER, ASCII_FILES_VIEWER, 11 BINARY_FILE_VIEWER, STRING_VIEWER, DRAW_VIEWER} ViewerType; 12 13 extern int ViewerFileOpenASCII(MPI_Comm,char*,Viewer *); 14 typedef enum { BINARY_RDONLY, BINARY_WRONLY, BINARY_CREATE} ViewerBinaryType; 15 extern int ViewerFileOpenBinary(MPI_Comm,char*,ViewerBinaryType,Viewer *); 16 extern int ViewerMatlabOpen(MPI_Comm,char*,int,Viewer *); 17 extern int ViewerStringOpen(MPI_Comm,char *,int, Viewer *); 18 extern int ViewerDrawOpenX(MPI_Comm,char *,char *,int,int,int,int,Viewer*); 19 extern int ViewerDrawOpenVRML(MPI_Comm,char *,char *,Viewer*); 20 21 extern int ViewerGetType(Viewer,ViewerType*); 22 extern int ViewerDestroy(Viewer); 23 24 extern int ViewerASCIIGetPointer(Viewer,FILE**); 25 extern int ViewerBinaryGetDescriptor(Viewer,int*); 26 extern int ViewerBinaryGetInfoPointer(Viewer,FILE **); 27 28 #define VIEWER_FORMAT_ASCII_DEFAULT 0 29 #define VIEWER_FORMAT_ASCII_MATLAB 1 30 #define VIEWER_FORMAT_ASCII_IMPL 2 31 #define VIEWER_FORMAT_ASCII_INFO 3 32 #define VIEWER_FORMAT_ASCII_INFO_LONG 4 33 #define VIEWER_FORMAT_ASCII_COMMON 5 34 #define VIEWER_FORMAT_BINARY_DEFAULT 0 35 #define VIEWER_FORMAT_BINARY_NATIVE 1 36 #define VIEWER_FORMAT_DRAW_BASIC 0 37 #define VIEWER_FORMAT_DRAW_LG 1 38 #define VIEWER_FORMAT_DRAW_CONTOUR 2 39 40 extern int ViewerSetFormat(Viewer,int,char *); 41 extern int ViewerPushFormat(Viewer,int,char *); 42 extern int ViewerPopFormat(Viewer); 43 extern int ViewerGetFormat(Viewer,int*); 44 45 extern int ViewerFlush(Viewer); 46 extern int ViewerStringSPrintf(Viewer,char *,...); 47 48 extern Viewer VIEWER_STDOUT_SELF; 49 extern Viewer VIEWER_STDERR_SELF; 50 extern Viewer VIEWER_STDOUT_WORLD; 51 extern Viewer VIEWER_DRAWX_WORLD_PRIVATE_0; 52 extern Viewer VIEWER_DRAWX_WORLD_PRIVATE_1; 53 extern Viewer VIEWER_DRAWX_WORLD_PRIVATE_2; 54 extern Viewer VIEWER_DRAWX_SELF_PRIVATE; 55 extern Viewer VIEWER_MATLAB_WORLD_PRIVATE; 56 extern Viewer VIEWER_MATLAB_SELF_PRIVATE; /* not yet used */ 57 58 extern int ViewerInitializeDrawXWorld_Private_0(); 59 extern int ViewerInitializeDrawXWorld_Private_1(); 60 extern int ViewerInitializeDrawXWorld_Private_2(); 61 extern int ViewerInitializeDrawXSelf_Private(); 62 extern int ViewerInitializeMatlabWorld_Private(); 63 extern Viewer VIEWER_DRAWX_(MPI_Comm); 64 65 #define VIEWER_DRAWX_WORLD_0 \ 66 (ViewerInitializeDrawXWorld_Private_0(),VIEWER_DRAWX_WORLD_PRIVATE_0) 67 #define VIEWER_DRAWX_WORLD_1 \ 68 (ViewerInitializeDrawXWorld_Private_1(),VIEWER_DRAWX_WORLD_PRIVATE_1) 69 #define VIEWER_DRAWX_WORLD_2 \ 70 (ViewerInitializeDrawXWorld_Private_2(),VIEWER_DRAWX_WORLD_PRIVATE_2) 71 72 #define VIEWER_DRAWX_SELF \ 73 (ViewerInitializeDrawXSelf_Private(),VIEWER_DRAWX_SELF_PRIVATE) 74 #define VIEWER_DRAWX_WORLD VIEWER_DRAWX_WORLD_0 75 #define VIEWER_MATLAB_WORLD \ 76 (ViewerInitializeMatlabWorld_Private(),VIEWER_MATLAB_WORLD_PRIVATE) 77 78 #endif 79