xref: /petsc/src/sys/classes/draw/interface/drawregall.c (revision 5b6bfdb9644f185dbf5e5a09b808ec241507e1e7)
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 #if defined(PETSC_HAVE_GLUT)
13 PETSC_EXTERN PetscErrorCode PetscDrawCreate_GLUT(PetscDraw);
14 #endif
15 #if defined(PETSC_HAVE_OPENGLES)
16 PETSC_EXTERN PetscErrorCode PetscDrawCreate_OpenGLES(PetscDraw);
17 #endif
18 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Null(PetscDraw);
19 #if defined(PETSC_USE_WINDOWS_GRAPHICS)
20 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Win32(PetscDraw);
21 #endif
22 
23 PetscBool PetscDrawRegisterAllCalled = PETSC_FALSE;
24 
25 /*@C
26   PetscDrawRegisterAll - Registers all of the graphics methods in the PetscDraw package.
27 
28   Not Collective
29 
30   Level: developer
31 
32 .seealso:  PetscDrawRegisterDestroy()
33 @*/
34 PetscErrorCode  PetscDrawRegisterAll(void)
35 {
36   PetscErrorCode ierr;
37 
38   PetscFunctionBegin;
39   if (PetscDrawRegisterAllCalled) PetscFunctionReturn(0);
40   PetscDrawRegisterAllCalled = PETSC_TRUE;
41 
42   ierr = PetscDrawRegister(PETSC_DRAW_IMAGE,    PetscDrawCreate_Image);CHKERRQ(ierr);
43   ierr = PetscDrawRegister(PETSC_DRAW_TIKZ,     PetscDrawCreate_TikZ);CHKERRQ(ierr);
44 #if defined(PETSC_HAVE_OPENGLES)
45   ierr = PetscDrawRegister(PETSC_DRAW_OPENGLES, PetscDrawCreate_OpenGLES);CHKERRQ(ierr);
46 #endif
47 #if defined(PETSC_HAVE_GLUT)
48   ierr = PetscDrawRegister(PETSC_DRAW_GLUT,     PetscDrawCreate_GLUT);CHKERRQ(ierr);
49 #endif
50 #if defined(PETSC_HAVE_X)
51   ierr = PetscDrawRegister(PETSC_DRAW_X,        PetscDrawCreate_X);CHKERRQ(ierr);
52 #elif defined(PETSC_USE_WINDOWS_GRAPHICS)
53   ierr = PetscDrawRegister(PETSC_DRAW_WIN32,    PetscDrawCreate_Win32);CHKERRQ(ierr);
54 #endif
55   ierr = PetscDrawRegister(PETSC_DRAW_NULL,     PetscDrawCreate_Null);CHKERRQ(ierr);
56   PetscFunctionReturn(0);
57 }
58 
59