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