hp2FEM  0.1
src/metis-5.0/libmetis/gklib_defs.h
Go to the documentation of this file.
00001 
00010 #ifndef _LIBMETIS_GKLIB_H_
00011 #define _LIBMETIS_GKLIB_H_
00012 
00013 #include "gklib_rename.h"
00014 
00015 /*************************************************************************/
00017 /*************************************************************************/
00018 typedef struct {
00019   idx_t u, v, w;               
00020 } uvw_t;
00021 
00022 /*************************************************************************
00023 * Define various data structure using GKlib's templates.
00024 **************************************************************************/
00025 GK_MKKEYVALUE_T(ikv_t, idx_t, idx_t)
00026 GK_MKKEYVALUE_T(rkv_t, real_t, idx_t)
00027 GK_MKPQUEUE_T(ipq_t, ikv_t)
00028 GK_MKPQUEUE_T(rpq_t, rkv_t)
00029 
00030 
00031 /* gklib.c */
00032 GK_MKBLAS_PROTO(i, idx_t, idx_t)
00033 GK_MKBLAS_PROTO(r, real_t, real_t)
00034 GK_MKALLOC_PROTO(i, idx_t)
00035 GK_MKALLOC_PROTO(r, real_t)
00036 GK_MKALLOC_PROTO(ikv, ikv_t)
00037 GK_MKALLOC_PROTO(rkv, rkv_t)
00038 GK_MKPQUEUE_PROTO(ipq, ipq_t, idx_t, idx_t)
00039 GK_MKPQUEUE_PROTO(rpq, rpq_t, real_t, idx_t)
00040 GK_MKRANDOM_PROTO(i, idx_t, idx_t)
00041 GK_MKARRAY2CSR_PROTO(i, idx_t)
00042 void isorti(size_t n, idx_t *base);
00043 void isortd(size_t n, idx_t *base);
00044 void rsorti(size_t n, real_t *base);
00045 void rsortd(size_t n, real_t *base);
00046 void ikvsorti(size_t n, ikv_t *base);
00047 void ikvsortii(size_t n, ikv_t *base);
00048 void ikvsortd(size_t n, ikv_t *base);
00049 void rkvsorti(size_t n, rkv_t *base);
00050 void rkvsortd(size_t n, rkv_t *base);
00051 void uvwsorti(size_t n, uvw_t *base);
00052 
00053 #endif
 All Classes Files Functions Variables Typedefs Friends Defines