/*@@ @header PUGHSlab.h @date Sun 28 May 2000 @author Thomas Radke @desc Function declarations of thorn Hyperslab @enddesc @history @endhistory @@*/ #ifndef _PUGHSLAB_PUGHSLAB_H_ #define _PUGHSLAB_PUGHSLAB_H_ #ifdef __cplusplus extern "C" { #endif /* prototype of datatype conversion routines */ typedef void (*PUGHSlab_conversion_fn) (void *hdata, void *vdata, unsigned int nelems); /* function prototypes */ int NewHyperslab_GetLocalHyperslab (cGH *GH, int vindex, int vtimelvl, int hdim, int htype, PUGHSlab_conversion_fn copy_fn, const int global_startpoint[/* vdim */], const int directions[/* hdim * vdim */], const int lengths[/* hdim */], const int downsample_[/* hdim */], void **hdata, int *free_hdata, int hsize[/* hdim */], int hsize_global[/* hdim */], int hoffset_global[/* hdim */]); #if 0 int NewHyperslab_GetHyperslab (cGH *GH, int target_proc, int vindex, int vtimelvl, int hdim, int htype, PUGHSlab_conversion_fn copy_fn, const int global_startpoint [/* vdim */], const int directions[/* hdim*vdim */], const int lengths[/* hdim */], const int downsample_[/* hdim */], void **hdata, int *free_hdata, int hsize[/* hdim */]); #endif PUGHSlab_conversion_fn PUGHSlab_GetDatatypeConversionFn (int vtype, int htype); #ifdef __cplusplus } #endif #endif /* _PUGHSLAB_PUGHSLAB_H_ */