1*de7da479SBarry Smith /* $Id: is.h,v 1.14 1995/07/07 17:17:31 bsmith Exp bsmith $ */ 22eac72dbSBarry Smith 32eac72dbSBarry Smith /* 42eac72dbSBarry Smith An index set is essentially a subset of the integers 52eac72dbSBarry Smith */ 62eac72dbSBarry Smith #if !defined(__IS_PACKAGE) 72eac72dbSBarry Smith #define __IS_PACKAGE 82eac72dbSBarry Smith #include "petsc.h" 92eac72dbSBarry Smith 109e25ed09SBarry Smith #define IS_COOKIE PETSC_COOKIE+2 11f0479e8cSBarry Smith 122eac72dbSBarry Smith typedef struct _IS* IS; 132eac72dbSBarry Smith 14*de7da479SBarry Smith extern int ISCreateSeq(MPI_Comm,int,int *,IS *); 15*de7da479SBarry Smith extern int ISCreateStrideSeq(MPI_Comm,int,int,int,IS *); 16*de7da479SBarry Smith extern int ISAddStrideSeq(IS*,int,int,int); 1720563c6bSBarry Smith extern int ISStrideGetInfo(IS,int *,int*); 182eac72dbSBarry Smith 19aabeff55SBarry Smith extern int ISSetPermutation(IS); 20aabeff55SBarry Smith extern int ISIsPermutation(IS); 21aabeff55SBarry Smith extern int ISGetIndices(IS,int **); 22aabeff55SBarry Smith extern int ISRestoreIndices(IS,int **); 23aabeff55SBarry Smith extern int ISGetSize(IS,int *); 24aabeff55SBarry Smith extern int ISGetLocalSize(IS,int *); 25aabeff55SBarry Smith extern int ISDestroy(IS); 26aabeff55SBarry Smith extern int ISInvertPermutation(IS,IS*); 27aabeff55SBarry Smith extern int ISView(IS,Viewer); 28aabeff55SBarry Smith 29*de7da479SBarry Smith #define ISGENERALSEQ 0 30*de7da479SBarry Smith #define ISSTRIDESEQ 2 3130913a5eSBarry Smith 322eac72dbSBarry Smith #endif 33