xref: /petsc/src/ts/interface/tsregall.c (revision b51ba29f2ce68dcf965c343af6f916e8c56c2d8b)
1 #ifdef PETSC_RCS_HEADER
2 static char vcid[] = "$Id: tsregall.c,v 1.12 1997/10/19 03:28:16 bsmith Exp bsmith $";
3 #endif
4 
5 #include "src/ts/tsimpl.h"     /*I  "ts.h"  I*/
6 extern int TSCreate_Euler(TS);
7 extern int TSCreate_BEuler(TS);
8 extern int TSCreate_Pseudo(TS);
9 extern int TSCreate_PVode(TS);
10 
11 #undef __FUNC__
12 #define __FUNC__ "TSRegisterAll"
13 /*@C
14   TSRegisterAll - Registers all of the timesteppers in the TS
15   package.
16 
17   Adding new methods:
18   To add a new method to the registry copy this routine and modify
19   it to incorporate a call to TSRegister() for the new method.
20 
21   Restricting the choices:
22   To prevent all of the methods from being registered and thus
23   save memory, copy this routine and modify it to register only
24   those methods you desire.  Make sure that the replacement routine
25   is linked before libpetscts.a.
26 
27 .keywords: TS, timestepper, register, all
28 
29 .seealso: TSRegister(), TSRegisterDestroy()
30 @*/
31 int TSRegisterAll()
32 {
33   PetscFunctionBegin;
34   TSRegisterAllCalled = 1;
35 
36   TSRegister(TS_EULER,         "euler",      "TSCreate_Euler",TSCreate_Euler,0);
37   TSRegister(TS_BEULER,        "beuler",     "TSCreate_BEuler",TSCreate_BEuler,0);
38   TSRegister(TS_PSEUDO,        "pseudo",     "TSCreate_Pseudo",TSCreate_Pseudo,0);
39 #if defined(HAVE_PVODE) && !defined(__cplusplus)
40   TSRegister(TS_PVODE,         "pvode",      "TSCreate_PVode",TSCreate_PVode,0);
41 #endif
42   PetscFunctionReturn(0);
43 }
44