3
\brief Templates for various utility routines
7
\version\verbatim $Id: gk_mkutils.h 10711 2011-08-31 22:23:04Z karypis $ \endverbatim
10
#ifndef _GK_MKUTILS_H_
11
#define _GK_MKUTILS_H_
14
#define GK_MKARRAY2CSR(PRFX, TYPE)\
15
/*************************************************************************/\
16
/*! The macro for gk_?array2csr() routine */\
17
/**************************************************************************/\
18
void PRFX ## array2csr(TYPE n, TYPE range, TYPE *array, TYPE *ptr, TYPE *ind)\
22
for (i=0; i<=range; i++)\
28
/* Compute the ptr, ind structure */\
29
MAKECSR(i, range, ptr);\
31
ind[ptr[array[i]]++] = i;\
32
SHIFTCSR(i, range, ptr);\
36
#define GK_MKARRAY2CSR_PROTO(PRFX, TYPE)\
37
void PRFX ## array2csr(TYPE n, TYPE range, TYPE *array, TYPE *ptr, TYPE *ind);\