xref: /petsc/src/sys/classes/draw/interface/drawregall.c (revision 00d931fe9835bef04c3bcd2a9a1bf118d64cc4c2)
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_TikZ(PetscDraw);
8 #if defined(PETSC_HAVE_X)
9 PETSC_EXTERN PetscErrorCode PetscDrawCreate_X(PetscDraw);
10 #endif
11 #if defined(PETSC_HAVE_GLUT)
12 PETSC_EXTERN PetscErrorCode PetscDrawCreate_GLUT(PetscDraw);
13 #endif
14 #if defined(PETSC_HAVE_OPENGLES)
15 PETSC_EXTERN PetscErrorCode PetscDrawCreate_OpenGLES(PetscDraw);
16 #endif
17 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Null(PetscDraw);
18 #if defined(PETSC_USE_WINDOWS_GRAPHICS)
19 PETSC_EXTERN PetscErrorCode PetscDrawCreate_Win32(PetscDraw);
20 #endif
21 
22 PetscBool PetscDrawRegisterAllCalled = PETSC_FALSE;
23 
24 #undef __FUNCT__
25 #define __FUNCT__ "PetscDrawRegisterAll"
26 /*@C
27   PetscDrawRegisterAll - Registers all of the graphics methods in the PetscDraw package.
28 
29   Not Collective
30 
31   Level: developer
32 
33 .seealso:  PetscDrawRegisterDestroy()
34 @*/
35 PetscErrorCode  PetscDrawRegisterAll(void)
36 {
37   PetscErrorCode ierr;
38 
39   PetscFunctionBegin;
40   if (PetscDrawRegisterAllCalled) PetscFunctionReturn(0);
41   PetscDrawRegisterAllCalled = PETSC_TRUE;
42 
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