20 #include "med_utils.h"
36 med_int _nentitiesfiltered=0,_maxfilternentities=0;
42 _tm = localtime(&_tt);
46 if ( profilearraysize ) {
47 _maxfilternentities = profilearraysize;
49 _maxfilternentities = nentities;
54 srandom((*_tm).tm_sec * (*_tm).tm_min );
55 _nentitiesfiltered = 1 + (int) ((
float)(_maxfilternentities) * (random() / (RAND_MAX + 1.0)));
58 (*filterarray) = malloc(_nentitiesfiltered*
sizeof(
med_int));
66 _indexarray=(*filterarray);
68 for (_i=0; _i < _nentitiesfiltered; ++_i ) {
69 _indexarray[_i] = 1 + (int) ((
double)(_maxfilternentities) * (random() / (RAND_MAX + 1.0)));
73 qsort(_indexarray, _nentitiesfiltered,
sizeof(
med_int), (
int(*)(
const void *,
const void *) )
cmp);
86 *nentitiesfiltered=_nentitiesfiltered;
med_err generateFilterArray(const med_size nentities, const med_size nvaluesperentity, const med_size nconstituentpervalue, const med_size profilearraysize, const med_int *const profilearray, med_int *const nentitiesfiltered, med_int **filterarray)
static int cmp(const med_int *p1, const med_int *p2)