xref: /petsc/src/dm/interface/dmregall.c (revision 3192c3e1bf96856519ae22ffd756f12fe2bc5489)
1264ace61SBarry Smith 
23c48a1e8SJed Brown #include <petscdm.h>     /*I  "petscdm.h"  I*/
3264ace61SBarry Smith EXTERN_C_BEGIN
47087cfbeSBarry Smith extern PetscErrorCode  DMCreate_DA(DM);
57087cfbeSBarry Smith extern PetscErrorCode  DMCreate_Composite(DM);
67087cfbeSBarry Smith extern PetscErrorCode  DMCreate_Sliced(DM);
77087cfbeSBarry Smith extern PetscErrorCode  DMCreate_ADDA(DM);
8*3192c3e1SMatthew G Knepley #ifndef PETSC_USE_COMPLEX
9*3192c3e1SMatthew G Knepley extern PetscErrorCode  DMCreate_IGA(DM);
10*3192c3e1SMatthew G Knepley #endif
11b30b9b2eSMatthew G Knepley #ifdef PETSC_HAVE_SIEVE
12b30b9b2eSMatthew G Knepley extern PetscErrorCode  DMCreate_Mesh(DM);
13b30b9b2eSMatthew G Knepley extern PetscErrorCode  DMCreate_Cartesian(DM);
14b30b9b2eSMatthew G Knepley #endif
15264ace61SBarry Smith EXTERN_C_END
16264ace61SBarry Smith 
17264ace61SBarry Smith #undef __FUNCT__
18264ace61SBarry Smith #define __FUNCT__ "DMRegisterAll"
19264ace61SBarry Smith /*@C
20264ace61SBarry Smith   DMRegisterAll - Registers all of the DM components in the DM package.
21264ace61SBarry Smith 
22264ace61SBarry Smith   Not Collective
23264ace61SBarry Smith 
24264ace61SBarry Smith   Input parameter:
25264ace61SBarry Smith . path - The dynamic library path
26264ace61SBarry Smith 
27264ace61SBarry Smith   Level: advanced
28264ace61SBarry Smith 
29264ace61SBarry Smith .keywords: DM, register, all
30264ace61SBarry Smith .seealso:  DMRegister(), DMRegisterDestroy(), DMRegisterDynamic()
31264ace61SBarry Smith @*/
327087cfbeSBarry Smith PetscErrorCode  DMRegisterAll(const char path[])
33264ace61SBarry Smith {
34264ace61SBarry Smith   PetscErrorCode ierr;
35264ace61SBarry Smith 
36264ace61SBarry Smith   PetscFunctionBegin;
37264ace61SBarry Smith   DMRegisterAllCalled = PETSC_TRUE;
38a4121054SBarry Smith   ierr = DMRegisterDynamic(DMDA,        path, "DMCreate_DA",        DMCreate_DA);CHKERRQ(ierr);
39a4121054SBarry Smith   ierr = DMRegisterDynamic(DMCOMPOSITE, path, "DMCreate_Composite", DMCreate_Composite);CHKERRQ(ierr);
40a4121054SBarry Smith   ierr = DMRegisterDynamic(DMSLICED,    path, "DMCreate_Sliced",    DMCreate_Sliced);CHKERRQ(ierr);
41a4121054SBarry Smith   ierr = DMRegisterDynamic(DMADDA,      path, "DMCreate_ADDA",      DMCreate_ADDA);CHKERRQ(ierr);
42*3192c3e1SMatthew G Knepley #ifndef PETSC_USE_COMPLEX
43*3192c3e1SMatthew G Knepley   ierr = DMRegisterDynamic(DMADDA,      path, "DMCreate_IGA",       DMCreate_IGA);CHKERRQ(ierr);
44*3192c3e1SMatthew G Knepley #endif
45b30b9b2eSMatthew G Knepley #ifdef PETSC_HAVE_SIEVE
46b30b9b2eSMatthew G Knepley   ierr = DMRegisterDynamic(DMMESH,      path, "DMCreate_Mesh",      DMCreate_Mesh);CHKERRQ(ierr);
47b30b9b2eSMatthew G Knepley   ierr = DMRegisterDynamic(DMCARTESIAN, path, "DMCreate_Cartesian", DMCreate_Cartesian);CHKERRQ(ierr);
48b30b9b2eSMatthew G Knepley #endif
49264ace61SBarry Smith   PetscFunctionReturn(0);
50264ace61SBarry Smith }
51264ace61SBarry Smith 
52