xref: /petsc/src/ts/interface/tsregall.c (revision d4bb536f0e426e9a0292bbfd5743770a9b03f0d5)
1a5eb4965SSatish Balay #ifdef PETSC_RCS_HEADER
2*d4bb536fSBarry Smith static char vcid[] = "$Id: tsregall.c,v 1.10 1997/08/07 20:59:40 bsmith Exp bsmith $";
3eb293426SBarry Smith #endif
4eb293426SBarry Smith 
5eb293426SBarry Smith #include "src/ts/tsimpl.h"     /*I  "ts.h"  I*/
6eb293426SBarry Smith extern int TSCreate_Euler(TS);
7eb293426SBarry Smith extern int TSCreate_BEuler(TS);
8eb293426SBarry Smith extern int TSCreate_Pseudo(TS);
93914022bSBarry Smith extern int TSCreate_PVode(TS);
10eb293426SBarry Smith 
115615d1e5SSatish Balay #undef __FUNC__
12*d4bb536fSBarry Smith #define __FUNC__ "TSRegisterAll"
13eb293426SBarry Smith /*@C
14eb293426SBarry Smith   TSRegisterAll - Registers all of the timesteppers in the TS
15eb293426SBarry Smith   package.
16eb293426SBarry Smith 
17eb293426SBarry Smith   Adding new methods:
182d872ea7SLois Curfman McInnes   To add a new method to the registry copy this routine and modify
192d872ea7SLois Curfman McInnes   it to incorporate a call to TSRegister() for the new method.
20eb293426SBarry Smith 
21eb293426SBarry Smith   Restricting the choices:
22eb293426SBarry Smith   To prevent all of the methods from being registered and thus
23eb293426SBarry Smith   save memory, copy this routine and modify it to register only
24eb293426SBarry Smith   those methods you desire.  Make sure that the replacement routine
2584cb2905SBarry Smith   is linked before libpetscts.a.
26eb293426SBarry Smith 
27fb4a63b6SLois Curfman McInnes .keywords: TS, timestepper, register, all
28eb293426SBarry Smith 
29eb293426SBarry Smith .seealso: TSRegister(), TSRegisterDestroy()
30eb293426SBarry Smith @*/
31eb293426SBarry Smith int TSRegisterAll()
32eb293426SBarry Smith {
3384cb2905SBarry Smith   TSRegisterAllCalled = 1;
3484cb2905SBarry Smith 
3584cb2905SBarry Smith   TSRegister(TS_EULER,         0,"euler",      TSCreate_Euler);
3684cb2905SBarry Smith   TSRegister(TS_BEULER,        0,"beuler",     TSCreate_BEuler);
3784cb2905SBarry Smith   TSRegister(TS_PSEUDO,        0,"pseudo",     TSCreate_Pseudo);
38a5020ba8SBarry Smith #if defined(HAVE_PVODE) && !defined(__cplusplus)
393914022bSBarry Smith   TSRegister(TS_PVODE,         0,"pvode",      TSCreate_PVode);
403914022bSBarry Smith #endif
41eb293426SBarry Smith   return 0;
42eb293426SBarry Smith }
43