xref: /petsc/include/petscis.h (revision 416022c9818a71eecdf06d41c1abd586feaab60e)
1 /* $Id: is.h,v 1.14 1995/07/07 17:17:31 bsmith Exp bsmith $ */
2 
3 /*
4       An index set is essentially a subset of the integers
5 */
6 #if !defined(__IS_PACKAGE)
7 #define __IS_PACKAGE
8 #include "petsc.h"
9 
10 #define IS_COOKIE PETSC_COOKIE+2
11 
12 typedef struct _IS* IS;
13 
14 extern int   ISCreateSeq(MPI_Comm,int,int *,IS *);
15 extern int   ISCreateStrideSeq(MPI_Comm,int,int,int,IS *);
16 extern int   ISAddStrideSeq(IS*,int,int,int);
17 extern int   ISStrideGetInfo(IS,int *,int*);
18 
19 extern int   ISSetPermutation(IS);
20 extern int   ISIsPermutation(IS);
21 extern int   ISGetIndices(IS,int **);
22 extern int   ISRestoreIndices(IS,int **);
23 extern int   ISGetSize(IS,int *);
24 extern int   ISGetLocalSize(IS,int *);
25 extern int   ISDestroy(IS);
26 extern int   ISInvertPermutation(IS,IS*);
27 extern int   ISView(IS,Viewer);
28 
29 #define ISGENERALSEQ 0
30 #define ISSTRIDESEQ  2
31 
32 #endif
33