xref: /petsc/include/petscis.h (revision 9e25ed09632ec91e2227f4e6f1ce3bfe794e20d8)
12eac72dbSBarry Smith 
22eac72dbSBarry Smith /*
32eac72dbSBarry Smith       An index set is essentially a subset of the integers
42eac72dbSBarry Smith */
52eac72dbSBarry Smith #if !defined(__IS_PACKAGE)
62eac72dbSBarry Smith #define __IS_PACKAGE
72eac72dbSBarry Smith #include "petsc.h"
82eac72dbSBarry Smith 
9*9e25ed09SBarry Smith #define IS_COOKIE PETSC_COOKIE+2
10f0479e8cSBarry Smith 
112eac72dbSBarry Smith typedef struct _IS* IS;
122eac72dbSBarry Smith 
13aabeff55SBarry Smith extern int    ISCreateSequential(int,int *,IS *);
1420563c6bSBarry Smith extern int    ISCreateMPI(int,int,int *,MPI_Comm,IS *);
15aabeff55SBarry Smith extern int    ISCreateStrideSequential(int,int,int,IS *);
1620563c6bSBarry Smith extern int    ISStrideGetInfo(IS,int *,int*);
172eac72dbSBarry Smith 
18aabeff55SBarry Smith extern int   ISSetPermutation(IS);
19aabeff55SBarry Smith extern int   ISIsPermutation(IS);
20aabeff55SBarry Smith extern int   ISGetIndices(IS,int **);
21aabeff55SBarry Smith extern int   ISRestoreIndices(IS,int **);
22aabeff55SBarry Smith extern int   ISGetSize(IS,int *);
23aabeff55SBarry Smith extern int   ISGetLocalSize(IS,int *);
24aabeff55SBarry Smith extern int   ISDestroy(IS);
25aabeff55SBarry Smith extern int   ISInvertPermutation(IS,IS*);
26aabeff55SBarry Smith extern int   ISView(IS,Viewer);
27aabeff55SBarry Smith 
282eac72dbSBarry Smith #endif
29