1*2eac72dbSBarry Smith 2*2eac72dbSBarry Smith /* 3*2eac72dbSBarry Smith An index set is essentially a subset of the integers 4*2eac72dbSBarry Smith */ 5*2eac72dbSBarry Smith #if !defined(__IS_PACKAGE) 6*2eac72dbSBarry Smith #define __IS_PACKAGE 7*2eac72dbSBarry Smith #include "petsc.h" 8*2eac72dbSBarry Smith 9*2eac72dbSBarry Smith typedef struct _IS* IS; 10*2eac72dbSBarry Smith 11*2eac72dbSBarry Smith int ISCreateSequential ANSI_ARGS((int,int *,IS *)); 12*2eac72dbSBarry Smith int ISCreateStrideSequential ANSI_ARGS((int,int,int,IS *)); 13*2eac72dbSBarry Smith int ISCreateRangeSequential ANSI_ARGS((int,int,int,IS *)); 14*2eac72dbSBarry Smith 15*2eac72dbSBarry Smith #if defined(MPI_COMPONENT) 16*2eac72dbSBarry Smith int ISCreateMPI ANSI_ARGS((void *,int,int *,IS *)); 17*2eac72dbSBarry Smith #endif 18*2eac72dbSBarry Smith 19*2eac72dbSBarry Smith int ISGetIndices ANSI_ARGS((IS,int **)); 20*2eac72dbSBarry Smith int ISRestoreIndices ANSI_ARGS((IS,int **)); 21*2eac72dbSBarry Smith int ISGetSize ANSI_ARGS((IS,int *)); 22*2eac72dbSBarry Smith int ISGetLocalSize ANSI_ARGS((IS,int *)); 23*2eac72dbSBarry Smith int ISGetPosition ANSI_ARGS((IS,int,int *)); 24*2eac72dbSBarry Smith int ISDestroy ANSI_ARGS((IS)); 25*2eac72dbSBarry Smith 26*2eac72dbSBarry Smith #endif 27