xref: /petsc/src/dm/interface/dmregall.c (revision 3a19ef87c57d96a00c8e8b5d38d585840d49a0e4)
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);
7fe1899a2SJed Brown extern PetscErrorCode  DMCreate_Shell(DM);
87087cfbeSBarry Smith extern PetscErrorCode  DMCreate_ADDA(DM);
93192c3e1SMatthew G Knepley extern PetscErrorCode  DMCreate_IGA(DM);
108ac4e037SJed Brown extern PetscErrorCode  DMCreate_Redundant(DM);
11e60d607bSMatthew G Knepley extern PetscErrorCode  DMCreate_Complex(DM);
12*3a19ef87SMatthew G Knepley extern PetscErrorCode  DMCreate_Patch(DM);
13b30b9b2eSMatthew G Knepley #ifdef PETSC_HAVE_SIEVE
14b30b9b2eSMatthew G Knepley extern PetscErrorCode  DMCreate_Mesh(DM);
15b30b9b2eSMatthew G Knepley extern PetscErrorCode  DMCreate_Cartesian(DM);
16b30b9b2eSMatthew G Knepley #endif
17264ace61SBarry Smith EXTERN_C_END
18264ace61SBarry Smith 
19264ace61SBarry Smith #undef __FUNCT__
20264ace61SBarry Smith #define __FUNCT__ "DMRegisterAll"
21264ace61SBarry Smith /*@C
22264ace61SBarry Smith   DMRegisterAll - Registers all of the DM components in the DM package.
23264ace61SBarry Smith 
24264ace61SBarry Smith   Not Collective
25264ace61SBarry Smith 
26264ace61SBarry Smith   Input parameter:
27264ace61SBarry Smith . path - The dynamic library path
28264ace61SBarry Smith 
29264ace61SBarry Smith   Level: advanced
30264ace61SBarry Smith 
31264ace61SBarry Smith .keywords: DM, register, all
32264ace61SBarry Smith .seealso:  DMRegister(), DMRegisterDestroy(), DMRegisterDynamic()
33264ace61SBarry Smith @*/
347087cfbeSBarry Smith PetscErrorCode  DMRegisterAll(const char path[])
35264ace61SBarry Smith {
36264ace61SBarry Smith   PetscErrorCode ierr;
37264ace61SBarry Smith 
38264ace61SBarry Smith   PetscFunctionBegin;
39264ace61SBarry Smith   DMRegisterAllCalled = PETSC_TRUE;
40a4121054SBarry Smith   ierr = DMRegisterDynamic(DMDA,        path, "DMCreate_DA",        DMCreate_DA);CHKERRQ(ierr);
41a4121054SBarry Smith   ierr = DMRegisterDynamic(DMCOMPOSITE, path, "DMCreate_Composite", DMCreate_Composite);CHKERRQ(ierr);
42a4121054SBarry Smith   ierr = DMRegisterDynamic(DMSLICED,    path, "DMCreate_Sliced",    DMCreate_Sliced);CHKERRQ(ierr);
43fe1899a2SJed Brown   ierr = DMRegisterDynamic(DMSHELL,     path, "DMCreate_Shell",     DMCreate_Shell);CHKERRQ(ierr);
44a4121054SBarry Smith   ierr = DMRegisterDynamic(DMADDA,      path, "DMCreate_ADDA",      DMCreate_ADDA);CHKERRQ(ierr);
45faed4825SMatthew G Knepley   ierr = DMRegisterDynamic(DMIGA,       path, "DMCreate_IGA",       DMCreate_IGA);CHKERRQ(ierr);
468ac4e037SJed Brown   ierr = DMRegisterDynamic(DMREDUNDANT, path, "DMCreate_Redundant", DMCreate_Redundant);CHKERRQ(ierr);
47e60d607bSMatthew G Knepley   ierr = DMRegisterDynamic(DMCOMPLEX,   path, "DMCreate_Complex",   DMCreate_Complex);CHKERRQ(ierr);
48*3a19ef87SMatthew G Knepley   ierr = DMRegisterDynamic(DMPATCH,     path, "DMCreate_Patch",     DMCreate_Patch);CHKERRQ(ierr);
49b30b9b2eSMatthew G Knepley #ifdef PETSC_HAVE_SIEVE
50b30b9b2eSMatthew G Knepley   ierr = DMRegisterDynamic(DMMESH,      path, "DMCreate_Mesh",      DMCreate_Mesh);CHKERRQ(ierr);
51b30b9b2eSMatthew G Knepley   ierr = DMRegisterDynamic(DMCARTESIAN, path, "DMCreate_Cartesian", DMCreate_Cartesian);CHKERRQ(ierr);
52b30b9b2eSMatthew G Knepley #endif
53264ace61SBarry Smith   PetscFunctionReturn(0);
54264ace61SBarry Smith }
55264ace61SBarry Smith 
56