xref: /petsc/src/vec/is/is/interface/isregall.c (revision 8eb1d50fa6bb58b38517c609409ddf07aed47a76)
1 
2 #include <petsc/private/isimpl.h> /*I  "petscis.h"  I*/
3 PETSC_EXTERN PetscErrorCode ISCreate_General(IS);
4 PETSC_EXTERN PetscErrorCode ISCreate_Stride(IS);
5 PETSC_EXTERN PetscErrorCode ISCreate_Block(IS);
6 
7 /*@C
8   ISRegisterAll - Registers all of the index set components in the `IS` package.
9 
10   Not Collective
11 
12   Level: advanced
13 
14 .seealso: [](sec_scatter), `IS`, `ISType`, `ISRegister()`
15 @*/
16 PetscErrorCode ISRegisterAll(void)
17 {
18   PetscFunctionBegin;
19   if (ISRegisterAllCalled) PetscFunctionReturn(0);
20   ISRegisterAllCalled = PETSC_TRUE;
21 
22   PetscCall(ISRegister(ISGENERAL, ISCreate_General));
23   PetscCall(ISRegister(ISSTRIDE, ISCreate_Stride));
24   PetscCall(ISRegister(ISBLOCK, ISCreate_Block));
25   PetscFunctionReturn(0);
26 }
27