1 #if !defined(_FreeSpace_h_) 2 #define _FreeSpace_h_ 3 4 #include "petsc.h" 5 6 typedef struct _Space *PetscFreeSpaceList; 7 8 struct _Space { 9 PetscFreeSpaceList more_space; 10 PetscInt *array; 11 PetscInt *array_head; 12 PetscInt total_array_size; 13 PetscInt local_used; 14 PetscInt local_remaining; 15 }; 16 17 PetscErrorCode PetscFreeSpaceGet(PetscInt,PetscFreeSpaceList*); 18 PetscErrorCode PetscFreeSpaceContiguous(PetscFreeSpaceList*,PetscInt *); 19 PetscErrorCode PetscFreeSpaceDestroy(PetscFreeSpaceList); 20 21 #endif 22