1 2 /* 3 Provides the calling sequences for all the basic PetscDraw routines. 4 */ 5 #include <petsc/private/drawimpl.h> /*I "petscdraw.h" I*/ 6 7 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Image(PetscDraw); 8 PETSC_EXTERN PetscErrorCode PetscDrawCreate_TikZ(PetscDraw); 9 #if defined(PETSC_HAVE_X) 10 PETSC_EXTERN PetscErrorCode PetscDrawCreate_X(PetscDraw); 11 #endif 12 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Null(PetscDraw); 13 #if defined(PETSC_USE_WINDOWS_GRAPHICS) 14 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Win32(PetscDraw); 15 #endif 16 17 PetscBool PetscDrawRegisterAllCalled = PETSC_FALSE; 18 19 /*@C 20 PetscDrawRegisterAll - Registers all of the graphics methods in the PetscDraw package. 21 22 Not Collective 23 24 Level: developer 25 26 .seealso: PetscDrawRegisterDestroy() 27 @*/ 28 PetscErrorCode PetscDrawRegisterAll(void) 29 { 30 PetscErrorCode ierr; 31 32 PetscFunctionBegin; 33 if (PetscDrawRegisterAllCalled) PetscFunctionReturn(0); 34 PetscDrawRegisterAllCalled = PETSC_TRUE; 35 36 ierr = PetscDrawRegister(PETSC_DRAW_IMAGE, PetscDrawCreate_Image);CHKERRQ(ierr); 37 ierr = PetscDrawRegister(PETSC_DRAW_TIKZ, PetscDrawCreate_TikZ);CHKERRQ(ierr); 38 #if defined(PETSC_HAVE_X) 39 ierr = PetscDrawRegister(PETSC_DRAW_X, PetscDrawCreate_X);CHKERRQ(ierr); 40 #elif defined(PETSC_USE_WINDOWS_GRAPHICS) 41 ierr = PetscDrawRegister(PETSC_DRAW_WIN32, PetscDrawCreate_Win32);CHKERRQ(ierr); 42 #endif 43 ierr = PetscDrawRegister(PETSC_DRAW_NULL, PetscDrawCreate_Null);CHKERRQ(ierr); 44 PetscFunctionReturn(0); 45 } 46